diff options
author | Brenda Wallace <shiny@cpan.org> | 2010-01-09 21:43:25 +0000 |
---|---|---|
committer | Brenda Wallace <shiny@cpan.org> | 2010-01-09 21:43:25 +0000 |
commit | 4de09d6bd4eab3259d42fa846e4dd31f2516a038 (patch) | |
tree | df650402df1abcb64e1aa9640eeeb782b3c20f03 | |
parent | f4459dfedcdea2f2a6078bedf9530deb45b6d52c (diff) | |
parent | f396701b6466749c09ce16b1e7f2f96c10b05cdd (diff) |
Merge commit 'origin/0.9.x' into 0.9.x
181 files changed, 15806 insertions, 7929 deletions
diff --git a/EVENTS.txt b/EVENTS.txt index 96250f64c..64e345b69 100644 --- a/EVENTS.txt +++ b/EVENTS.txt @@ -640,3 +640,18 @@ EndLog: After writing to the logs - $msg - $filename +StartBlockProfile: when we're about to block +- $user: the person doing the block +- $profile: the person getting blocked, can be remote + +EndBlockProfile: when a block has succeeded +- $user: the person doing the block +- $profile: the person blocked, can be remote + +StartUnblockProfile: when we're about to unblock +- $user: the person doing the unblock +- $profile: the person getting unblocked, can be remote + +EndUnblockProfile: when an unblock has succeeded +- $user: the person doing the unblock +- $profile: the person unblocked, can be remote @@ -710,11 +710,21 @@ 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 "proper behaviour" hasn't been defined here, so handle with care. -If fancy URLs is enabled, access to file attachments can also be -restricted to logged-in users only. Uncomment the appropriate rewrite -rule in .htaccess or your server's httpd.conf. (This most likely will -not work if you are using a virtual server for attachments, so consider -the performance/security tradeoff.) +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 + stored. Usually a command like this will work: + + mkdir /var/www/mublog-files + +2. Make the file uploads directory writeable by the web server. An + insecure way to do this is: + + chmod a+x /var/www/mublog-files + +3. Tell StatusNet to use this directory for file uploads. Add a line + like this to your config.php: + + $config['attachments']['dir'] = '/var/www/mublog-files'; Upgrading ========= @@ -1612,6 +1622,7 @@ if anyone's been overlooked in error. * Craig Andrews * mEDI * Brett Taylor +* Brigitte Schuster Thanks also to the developers of our upstream library code and to the thousands of people who have tried out Identi.ca, installed StatusNet, diff --git a/actions/apiblockcreate.php b/actions/apiblockcreate.php index e79dec32d..c26485f59 100644 --- a/actions/apiblockcreate.php +++ b/actions/apiblockcreate.php @@ -109,9 +109,16 @@ class ApiBlockCreateAction extends ApiAuthAction return; } - if ($this->user->hasBlocked($this->other) - || $this->user->block($this->other) - ) { + if (!$this->user->hasBlocked($this->other)) { + if (Event::handle('StartBlockProfile', array($this->user, $this->other))) { + $result = $this->user->block($this->other); + if ($result) { + Event::handle('EndBlockProfile', array($this->user, $this->other)); + } + } + } + + if ($this->user->hasBlocked($this->other)) { $this->initDocument($this->format); $this->showProfile($this->other, $this->format); $this->endDocument($this->format); diff --git a/actions/apiblockdestroy.php b/actions/apiblockdestroy.php index 328f18ab0..666f308f4 100644 --- a/actions/apiblockdestroy.php +++ b/actions/apiblockdestroy.php @@ -97,9 +97,16 @@ class ApiBlockDestroyAction extends ApiAuthAction return; } - if (!$this->user->hasBlocked($this->other) - || $this->user->unblock($this->other) - ) { + if ($this->user->hasBlocked($this->other)) { + if (Event::handle('StartUnblockProfile', array($this->user, $this->other))) { + $result = $this->user->unblock($this->other); + if ($result) { + Event::handle('EndUnblockProfile', array($this->user, $this->other)); + } + } + } + + if (!$this->user->hasBlocked($this->other)) { $this->initDocument($this->format); $this->showProfile($this->other, $this->format); $this->endDocument($this->format); diff --git a/actions/apigroupleave.php b/actions/apigroupleave.php index 514a3a557..5627bfc14 100644 --- a/actions/apigroupleave.php +++ b/actions/apigroupleave.php @@ -108,7 +108,7 @@ class ApiGroupLeaveAction extends ApiAuthAction $member = new Group_member(); $member->group_id = $this->group->id; - $member->profile_id = $this->auth->id; + $member->profile_id = $this->auth_user->id; if (!$member->find(true)) { $this->serverError(_('You are not a member of this group.')); @@ -118,12 +118,12 @@ class ApiGroupLeaveAction extends ApiAuthAction $result = $member->delete(); if (!$result) { - common_log_db_error($member, 'INSERT', __FILE__); + common_log_db_error($member, 'DELETE', __FILE__); $this->serverError( sprintf( - _('Could not remove user %s to group %s.'), + _('Could not remove user %s from group %s.'), $this->user->nickname, - $this->$group->nickname + $this->group->nickname ) ); return; diff --git a/actions/apistatusesupdate.php b/actions/apistatusesupdate.php index dabbea92f..f594bbf39 100644 --- a/actions/apistatusesupdate.php +++ b/actions/apistatusesupdate.php @@ -203,12 +203,6 @@ class ApiStatusesUpdateAction extends ApiAuthAction } } - $location = null; - - if (!empty($this->lat) && !empty($this->lon)) { - $location = Location::fromLatLon($this->lat, $this->lon); - } - $upload = null; try { @@ -235,11 +229,15 @@ class ApiStatusesUpdateAction extends ApiAuthAction $options = array('reply_to' => $reply_to); - if (!empty($location)) { - $options['lat'] = $location->lat; - $options['lon'] = $location->lon; - $options['location_id'] = $location->location_id; - $options['location_ns'] = $location->location_ns; + if ($this->user->shareLocation()) { + + $locOptions = Notice::locationOptions($this->lat, + $this->lon, + null, + null, + $this->user->getProfile()); + + $options = array_merge($options, $locOptions); } $this->notice = diff --git a/actions/block.php b/actions/block.php index 71a34e087..5fae45dff 100644 --- a/actions/block.php +++ b/actions/block.php @@ -156,7 +156,12 @@ class BlockAction extends ProfileFormAction { $cur = common_current_user(); - $result = $cur->block($this->profile); + if (Event::handle('StartBlockProfile', array($cur, $this->profile))) { + $result = $cur->block($this->profile); + if ($result) { + Event::handle('EndBlockProfile', array($cur, $this->profile)); + } + } if (!$result) { $this->serverError(_('Failed to save block information.')); @@ -164,4 +169,3 @@ class BlockAction extends ProfileFormAction } } } - diff --git a/actions/favorited.php b/actions/favorited.php index 150b67b0b..9ffa5b844 100644 --- a/actions/favorited.php +++ b/actions/favorited.php @@ -185,11 +185,7 @@ class FavoritedAction extends Action function showContent() { - if (common_config('db', 'type') == 'pgsql') { - $weightexpr='sum(exp(-extract(epoch from (now() - fave.modified)) / %s))'; - } else { - $weightexpr='sum(exp(-(now() - fave.modified) / %s))'; - } + $weightexpr = common_sql_weight('fave.modified', common_config('popular', 'dropoff')); $qry = 'SELECT notice.*, '. $weightexpr . ' as weight ' . @@ -207,7 +203,7 @@ class FavoritedAction extends Action } $notice = Memcached_DataObject::cachedQuery('Notice', - sprintf($qry, common_config('popular', 'dropoff')), + $qry, 600); $nl = new NoticeList($notice, $this); diff --git a/actions/geocode.php b/actions/geocode.php new file mode 100644 index 000000000..9671d2c27 --- /dev/null +++ b/actions/geocode.php @@ -0,0 +1,98 @@ +<?php +/** + * Geocode action class + * + * PHP version 5 + * + * @category Action + * @package StatusNet + * @author Craig Andrews <candrews@integralblue.com> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2008, 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET') && !defined('LACONICA')) { + exit(1); +} + +/** + * Geocode action class + * + * @category Action + * @package StatusNet + * @author Craig Andrews <candrews@integralblue.com> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + */ +class GeocodeAction extends Action +{ + function prepare($args) + { + parent::prepare($args); + $token = $this->trimmed('token'); + if (!$token || $token != common_session_token()) { + $this->clientError(_('There was a problem with your session token. '. + 'Try again, please.')); + } + $this->lat = $this->trimmed('lat'); + $this->lon = $this->trimmed('lon'); + $location = Location::fromLatLon($this->lat, $this->lon); + if ($location) { + $this->location = Location::fromId($location->location_id, $location->location_ns); + $this->lat = $this->location->lat; + $this->lon = $this->location->lon; + } + return true; + } + + /** + * Class handler + * + * @param array $args query arguments + * + * @return nothing + * + **/ + function handle($args) + { + header('Content-Type: application/json; charset=utf-8'); + $location_object = array(); + $location_object['lat']=$this->lat; + $location_object['lon']=$this->lon; + if($this->location) { + $location_object['location_id']=$this->location->location_id; + $location_object['location_ns']=$this->location->location_ns; + $location_object['name']=$this->location->getName(); + $location_object['url']=$this->location->getUrl(); + } + print(json_encode($location_object)); + } + + /** + * Is this action read-only? + * + * @return boolean true + */ + + function isReadOnly($args) + { + return true; + } +} +?> diff --git a/actions/getfile.php b/actions/getfile.php index ecda34c0f..cd327e410 100644 --- a/actions/getfile.php +++ b/actions/getfile.php @@ -1,13 +1,13 @@ <?php /** - * StatusNet, the distributed open-source microblogging tool + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. * - * Returns a given file attachment, allowing private sites to only allow - * access to file attachments after login. + * Return a requested file * * PHP version 5 * - * LICENCE: This program is free software: you can redistribute it and/or modify + * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. @@ -20,28 +20,32 @@ * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * - * @category Personal + * @category PrivateAttachments * @package StatusNet * @author Jeffery To <jeffery.to@gmail.com> - * @copyright 2008-2009 StatusNet, Inc. - * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ -if (!defined('STATUSNET') && !defined('LACONICA')) { +if (!defined('STATUSNET')) { exit(1); } require_once 'MIME/Type.php'; /** - * Action for getting a file attachment + * An action for returning a requested file * - * @category Personal - * @package StatusNet - * @author Jeffery To <jeffery.to@gmail.com> - * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 - * @link http://status.net/ + * The StatusNet system will do an implicit user check if the site is + * private before allowing this to continue + * + * @category PrivateAttachments + * @package StatusNet + * @author Jeffery To <jeffery.to@gmail.com> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ */ class GetfileAction extends Action @@ -68,7 +72,7 @@ class GetfileAction extends Action $path = null; if ($filename) { - $path = common_config('attachments', 'dir') . $filename; + $path = File::path($filename); } if (empty($path) or !file_exists($path)) { @@ -103,6 +107,10 @@ class GetfileAction extends Action function lastModified() { + if (common_config('site', 'use_x_sendfile')) { + return null; + } + return filemtime($this->path); } @@ -114,8 +122,24 @@ class GetfileAction extends Action * * @return string etag http header */ + function etag() { + if (common_config('site', 'use_x_sendfile')) { + return null; + } + + $cache = common_memcache(); + if($cache) { + $key = common_cache_key('attachments:etag:' . $this->path); + $etag = $cache->get($key); + if($etag === false) { + $etag = crc32(file_get_contents($this->path)); + $cache->set($key,$etag); + } + return $etag; + } + $stat = stat($this->path); return '"' . $stat['ino'] . '-' . $stat['size'] . '-' . $stat['mtime'] . '"'; } @@ -133,13 +157,19 @@ class GetfileAction extends Action // undo headers set by PHP sessions $sec = session_cache_expire() * 60; header('Expires: ' . date(DATE_RFC1123, time() + $sec)); - header('Cache-Control: public, max-age=' . $sec); - header('Pragma: public'); + header('Cache-Control: max-age=' . $sec); parent::handle($args); $path = $this->path; + header('Content-Type: ' . MIME_Type::autoDetect($path)); - readfile($path); + + if (common_config('site', 'use_x_sendfile')) { + header('X-Sendfile: ' . $path); + } else { + header('Content-Length: ' . filesize($path)); + readfile($path); + } } } diff --git a/actions/leavegroup.php b/actions/leavegroup.php index 08fce1509..90c85e1a4 100644 --- a/actions/leavegroup.php +++ b/actions/leavegroup.php @@ -123,8 +123,8 @@ class LeavegroupAction extends Action $result = $member->delete(); if (!$result) { - common_log_db_error($member, 'INSERT', __FILE__); - $this->serverError(sprintf(_('Could not remove user %s to group %s'), + common_log_db_error($member, 'DELETE', __FILE__); + $this->serverError(sprintf(_('Could not remove user %s from group %s'), $cur->nickname, $this->group->nickname)); } diff --git a/actions/newnotice.php b/actions/newnotice.php index c014f1781..a4ed87bb6 100644 --- a/actions/newnotice.php +++ b/actions/newnotice.php @@ -164,19 +164,6 @@ class NewnoticeAction extends Action $replyto = 'false'; } - $lat = $this->trimmed('lat'); - $lon = $this->trimmed('lon'); - $location_id = $this->trimmed('location_id'); - $location_ns = $this->trimmed('location_ns'); - - if (!empty($lat) && !empty($lon) && empty($location_id)) { - $location = Location::fromLatLon($lat, $lon); - if (!empty($location)) { - $location_id = $location->location_id; - $location_ns = $location->location_ns; - } - } - $upload = null; $upload = MediaFile::fromUpload('attach'); @@ -195,12 +182,20 @@ class NewnoticeAction extends Action } } - $notice = Notice::saveNew($user->id, $content_shortened, 'web', - array('reply_to' => ($replyto == 'false') ? null : $replyto, - 'lat' => $lat, - 'lon' => $lon, - 'location_id' => $location_id, - 'location_ns' => $location_ns)); + $options = array('reply_to' => ($replyto == 'false') ? null : $replyto); + + if ($user->shareLocation() && $this->arg('notice_data-geo')) { + + $locOptions = Notice::locationOptions($this->trimmed('lat'), + $this->trimmed('lon'), + $this->trimmed('location_id'), + $this->trimmed('location_ns'), + $user->getProfile()); + + $options = array_merge($options, $locOptions); + } + + $notice = Notice::saveNew($user->id, $content_shortened, 'web', $options); if (isset($upload)) { $upload->attachToNotice($notice); diff --git a/actions/profilesettings.php b/actions/profilesettings.php index acfcbcd00..0d6777879 100644 --- a/actions/profilesettings.php +++ b/actions/profilesettings.php @@ -133,6 +133,13 @@ class ProfilesettingsAction extends AccountSettingsAction ($this->arg('location')) ? $this->arg('location') : $profile->location, _('Where you are, like "City, State (or Region), Country"')); $this->elementEnd('li'); + if (common_config('location', 'share') == 'user') { + $this->elementStart('li'); + $this->checkbox('sharelocation', _('Share my current location when posting notices'), + ($this->arg('sharelocation')) ? + $this->arg('sharelocation') : $user->shareLocation()); + $this->elementEnd('li'); + } Event::handle('EndProfileFormData', array($this)); $this->elementStart('li'); $this->input('tags', _('Tags'), @@ -309,7 +316,12 @@ class ProfilesettingsAction extends AccountSettingsAction $loc = Location::fromName($location); - if (!empty($loc)) { + if (empty($loc)) { + $profile->lat = null; + $profile->lon = null; + $profile->location_id = null; + $profile->location_ns = null; + } else { $profile->lat = $loc->lat; $profile->lon = $loc->lon; $profile->location_id = $loc->location_id; @@ -318,6 +330,37 @@ class ProfilesettingsAction extends AccountSettingsAction $profile->profileurl = common_profile_url($nickname); + if (common_config('location', 'share') == 'user') { + + $exists = false; + + $prefs = User_location_prefs::staticGet('user_id', $user->id); + + if (empty($prefs)) { + $prefs = new User_location_prefs(); + + $prefs->user_id = $user->id; + $prefs->created = common_sql_now(); + } else { + $exists = true; + $orig = clone($prefs); + } + + $prefs->share_location = $this->boolean('sharelocation'); + + if ($exists) { + $result = $prefs->update($orig); + } else { + $result = $prefs->insert(); + } + + if ($result === false) { + common_log_db_error($prefs, ($exists) ? 'UPDATE' : 'INSERT', __FILE__); + $this->serverError(_('Couldn\'t save location prefs.')); + return; + } + } + common_debug('Old profile: ' . common_log_objstring($orig_profile), __FILE__); common_debug('New profile: ' . common_log_objstring($profile), __FILE__); diff --git a/actions/publictagcloud.php b/actions/publictagcloud.php index e7f6ee36c..9e4478dbb 100644 --- a/actions/publictagcloud.php +++ b/actions/publictagcloud.php @@ -105,12 +105,8 @@ class PublictagcloudAction extends Action #Add the aggregated columns... $tags->selectAdd('max(notice_id) as last_notice_id'); - if(common_config('db','type')=='pgsql') { - $calc='sum(exp(-extract(epoch from (now()-created))/%s)) as weight'; - } else { - $calc='sum(exp(-(now() - created)/%s)) as weight'; - } - $tags->selectAdd(sprintf($calc, common_config('tag', 'dropoff'))); + $calc = common_sql_weight('created', common_config('tag', 'dropoff')); + $tags->selectAdd($calc . ' as weight'); $tags->groupBy('tag'); $tags->orderBy('weight DESC'); @@ -136,7 +132,12 @@ class PublictagcloudAction extends Action $this->elementStart('dd'); $this->elementStart('ul', 'tags xoxo tag-cloud'); foreach ($tw as $tag => $weight) { - $this->showTag($tag, $weight, $weight/$sum); + if ($sum) { + $weightedSum = $weight/$sum; + } else { + $weightedSum = 0.5; + } + $this->showTag($tag, $weight, $weightedSum); } $this->elementEnd('ul'); $this->elementEnd('dd'); diff --git a/actions/shownotice.php b/actions/shownotice.php index 5d16fdad9..d09100f67 100644 --- a/actions/shownotice.php +++ b/actions/shownotice.php @@ -103,7 +103,7 @@ class ShownoticeAction extends OwnerDesignAction $this->user = User::staticGet('id', $this->profile->id); - if (! $this->notice->is_local) { + if ($this->notice->is_local == Notice::REMOTE_OMB) { common_redirect($this->notice->uri); return false; } diff --git a/actions/twitapisearchatom.php b/actions/twitapisearchatom.php index 1cb8d7efe..baed2a0c7 100644 --- a/actions/twitapisearchatom.php +++ b/actions/twitapisearchatom.php @@ -208,7 +208,14 @@ class TwitapisearchatomAction extends ApiAction $this->showFeed(); foreach ($notices as $n) { - $this->showEntry($n); + + $profile = $n->getProfile(); + + // Don't show notices from deleted users + + if (!empty($profile)) { + $this->showEntry($n); + } } $this->endAtom(); diff --git a/actions/unblock.php b/actions/unblock.php index c60458cd3..0f63e1dae 100644 --- a/actions/unblock.php +++ b/actions/unblock.php @@ -71,8 +71,17 @@ class UnblockAction extends ProfileFormAction function handlePost() { - $cur = common_current_user(); - $result = $cur->unblock($this->profile); + $cur = common_current_user(); + + $result = false; + + if (Event::handle('StartUnblockProfile', array($cur, $this->profile))) { + $result = $cur->unblock($this->profile); + if ($result) { + Event::handle('EndUnblockProfile', array($cur, $this->profile)); + } + } + if (!$result) { $this->serverError(_('Error removing the block.')); return; diff --git a/actions/version.php b/actions/version.php new file mode 100644 index 000000000..2cf914296 --- /dev/null +++ b/actions/version.php @@ -0,0 +1,270 @@ +<?php +/** + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2008, 2009, StatusNet, Inc. + * + * Show version information for this software and plugins + * + * PHP version 5 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Info + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Version info page + * + * A page that shows version information for this site. Helpful for + * debugging, for giving credit to authors, and for linking to more + * complete documentation for admins. + * + * @category Info + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3 + * @link http://status.net/ + */ + +class VersionAction extends Action +{ + var $pluginVersions = array(); + + /** + * Return true since we're read-only. + * + * @param array $args other arguments + * + * @return boolean is read only action? + */ + + function isReadOnly($args) + { + return true; + } + + /** + * Returns the page title + * + * @return string page title + */ + + function title() + { + return sprintf(_("StatusNet %s"), STATUSNET_VERSION); + } + + /** + * Prepare to run + * + * Fire off an event to let plugins report their + * versions. + * + * @param array $args array misc. arguments + * + * @return boolean true + */ + + function prepare($args) + { + parent::prepare($args); + + Event::handle('PluginVersion', array(&$this->pluginVersions)); + + return true; + } + + /** + * Execute the action + * + * Shows a page with the version information in the + * content area. + * + * @param array $args ignored. + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + $this->showPage(); + } + + + /* + * Override to add hentry, and content-inner classes + * + * @return void + */ + function showContentBlock() + { + $this->elementStart('div', array('id' => 'content', 'class' => 'hentry')); + $this->showPageTitle(); + $this->showPageNoticeBlock(); + $this->elementStart('div', array('id' => 'content_inner', + 'class' => 'entry-content')); + // show the actual content (forms, lists, whatever) + $this->showContent(); + $this->elementEnd('div'); + $this->elementEnd('div'); + } + + + /* + * Overrride to add entry-title class + * + * @return void + */ + function showPageTitle() { + $this->element('h1', array('class' => 'entry-title'), $this->title()); + } + + + /** + * Show version information + * + * @return void + */ + + function showContent() + { + $this->elementStart('p'); + + $this->raw(sprintf(_('This site is powered by %s version %s, '. + 'Copyright 2008-2010 StatusNet, Inc. '. + 'and contributors.'), + XMLStringer::estring('a', array('href' => 'http://status.net/'), + _('StatusNet')), + STATUSNET_VERSION)); + $this->elementEnd('p'); + + $this->element('h2', null, _('Contributors')); + + $this->element('p', null, implode(', ', $this->contributors)); + + $this->element('h2', null, _('License')); + + $this->element('p', null, + _('StatusNet is free software: you can redistribute it and/or modify '. + 'it under the terms of the GNU Affero General Public License as published by '. + 'the Free Software Foundation, either version 3 of the License, or '. + '(at your option) any later version. ')); + + $this->element('p', null, + _('This program is distributed in the hope that it will be useful, '. + 'but WITHOUT ANY WARRANTY; without even the implied warranty of '. + 'MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the '. + 'GNU Affero General Public License for more details. ')); + + $this->elementStart('p'); + $this->raw(sprintf(_('You should have received a copy of the GNU Affero General Public License '. + 'along with this program. If not, see %s.'), + XMLStringer::estring('a', array('href' => 'http://www.gnu.org/licenses/agpl.html'), + 'http://www.gnu.org/licenses/agpl.html'))); + $this->elementEnd('p'); + + // XXX: Theme information? + + if (count($this->pluginVersions)) { + $this->element('h2', null, _('Plugins')); + + $this->elementStart('table', array('id' => 'plugins_enabled')); + + $this->elementStart('thead'); + $this->elementStart('tr'); + $this->element('th', array('id' => 'plugin_name'), _('Name')); + $this->element('th', array('id' => 'plugin_version'), _('Version')); + $this->element('th', array('id' => 'plugin_authors'), _('Author(s)')); + $this->element('th', array('id' => 'plugin_description'), _('Description')); + $this->elementEnd('tr'); + $this->elementEnd('thead'); + + $this->elementStart('tbody'); + foreach ($this->pluginVersions as $plugin) { + $this->elementStart('tr'); + if (array_key_exists('homepage', $plugin)) { + $this->elementStart('th'); + $this->element('a', array('href' => $plugin['homepage']), + $plugin['name']); + $this->elementEnd('th'); + } else { + $this->element('th', null, $plugin['name']); + } + + $this->element('td', null, $plugin['version']); + + if (array_key_exists('author', $plugin)) { + $this->element('td', null, $plugin['author']); + } + + if (array_key_exists('rawdescription', $plugin)) { + $this->elementStart('td'); + $this->raw($plugin['rawdescription']); + $this->elementEnd('td'); + } else if (array_key_exists('description', $plugin)) { + $this->element('td', null, $plugin['description']); + } + $this->elementEnd('tr'); + } + $this->elementEnd('tbody'); + $this->elementEnd('table'); + } + + } + + var $contributors = array('Evan Prodromou (StatusNet)', + 'Zach Copley (StatusNet)', + 'Earle Martin (StatusNet)', + 'Marie-Claude Doyon (StatusNet)', + 'Sarven Capadisli (StatusNet)', + 'Robin Millette (StatusNet)', + 'Ciaran Gultnieks', + 'Michael Landers', + 'Ori Avtalion', + 'Garret Buell', + 'Mike Cochrane', + 'Matthew Gregg', + 'Florian Biree', + 'Erik Stambaugh', + 'drry', + 'Gina Haeussge', + 'Tryggvi Björgvinsson', + 'Adrian Lang', + 'Meitar Moscovitz', + 'Sean Murphy', + 'Leslie Michael Orchard', + 'Eric Helgeson', + 'Ken Sedgwick', + 'Brian Hendrickson', + 'Tobias Diekershoff', + 'Dan Moore', + 'Fil', + 'Jeff Mitchell', + 'Brenda Wallace', + 'Jeffery To', + 'Federico Marani', + 'Craig Andrews', + 'mEDI', + 'Brett Taylor', + 'Brigitte Schuster'); +} diff --git a/classes/Avatar.php b/classes/Avatar.php index 8d6424e8b..91bde0f04 100644 --- a/classes/Avatar.php +++ b/classes/Avatar.php @@ -37,7 +37,7 @@ class Avatar extends Memcached_DataObject } } - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Avatar', $kv); } diff --git a/classes/Config.php b/classes/Config.php index 390d75381..43b99587f 100644 --- a/classes/Config.php +++ b/classes/Config.php @@ -59,7 +59,7 @@ class Config extends Memcached_DataObject if (!empty($c)) { $settings = $c->get(common_cache_key(self::settingsKey)); - if (!empty($settings)) { + if ($settings !== false) { return $settings; } } @@ -120,7 +120,7 @@ class Config extends Memcached_DataObject return $result; } - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Config', $kv); } diff --git a/classes/Fave.php b/classes/Fave.php index 11e876ff1..8113c8e16 100644 --- a/classes/Fave.php +++ b/classes/Fave.php @@ -32,7 +32,7 @@ class Fave extends Memcached_DataObject return $fave; } - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Fave', $kv); } diff --git a/classes/File.php b/classes/File.php index e04a9d525..6173f31d6 100644 --- a/classes/File.php +++ b/classes/File.php @@ -182,25 +182,32 @@ class File extends Memcached_DataObject static function url($filename) { - $path = common_config('attachments', 'path'); + if(common_config('site','private')) { - if ($path[strlen($path)-1] != '/') { - $path .= '/'; - } + return common_local_url('getfile', + array('filename' => $filename)); - if ($path[0] != '/') { - $path = '/'.$path; - } + } else { + $path = common_config('attachments', 'path'); - $server = common_config('attachments', 'server'); + if ($path[strlen($path)-1] != '/') { + $path .= '/'; + } - if (empty($server)) { - $server = common_config('site', 'server'); - } + if ($path[0] != '/') { + $path = '/'.$path; + } + + $server = common_config('attachments', 'server'); - // XXX: protocol + if (empty($server)) { + $server = common_config('site', 'server'); + } - return 'http://'.$server.$path.$filename; + // XXX: protocol + + return 'http://'.$server.$path.$filename; + } } function getEnclosure(){ diff --git a/classes/File_to_post.php b/classes/File_to_post.php index e3db91b20..72a42b088 100644 --- a/classes/File_to_post.php +++ b/classes/File_to_post.php @@ -62,7 +62,7 @@ class File_to_post extends Memcached_DataObject } } - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('File_to_post', $kv); } diff --git a/classes/Group_block.php b/classes/Group_block.php index de2cf5f6e..9f4d59295 100644 --- a/classes/Group_block.php +++ b/classes/Group_block.php @@ -40,7 +40,7 @@ class Group_block extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Group_block', $kv); } diff --git a/classes/Group_inbox.php b/classes/Group_inbox.php index 1af7439f7..2a0787e38 100644 --- a/classes/Group_inbox.php +++ b/classes/Group_inbox.php @@ -20,7 +20,7 @@ class Group_inbox extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Group_inbox', $kv); } diff --git a/classes/Group_member.php b/classes/Group_member.php index 3c23a991f..069b2c7a1 100644 --- a/classes/Group_member.php +++ b/classes/Group_member.php @@ -21,7 +21,7 @@ class Group_member extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Group_member', $kv); } diff --git a/classes/Memcached_DataObject.php b/classes/Memcached_DataObject.php index be8137573..400b05f97 100644 --- a/classes/Memcached_DataObject.php +++ b/classes/Memcached_DataObject.php @@ -19,8 +19,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } -require_once INSTALLDIR.'/classes/Memcached_DataObject.php'; - class Memcached_DataObject extends DB_DataObject { /** @@ -38,6 +36,41 @@ class Memcached_DataObject extends DB_DataObject } /** + * Magic function called at serialize() time. + * + * We use this to drop a couple process-specific references + * from DB_DataObject which can cause trouble in future + * processes. + * + * @return array of variable names to include in serialization. + */ + function __sleep() + { + $vars = array_keys(get_object_vars($this)); + $skip = array('_DB_resultid', '_link_loaded'); + return array_diff($vars, $skip); + } + + /** + * Magic function called at unserialize() time. + * + * Clean out some process-specific variables which might + * be floating around from a previous process's cached + * objects. + * + * Old cached objects may still have them. + */ + function __wakeup() + { + // Refers to global state info from a previous process. + // Clear this out so we don't accidentally break global + // state in *this* process. + $this->_DB_resultid = null; + // We don't have any local DBO refs, so clear these out. + $this->_link_loaded = false; + } + + /** * Wrapper for DB_DataObject's static lookup using memcached * as backing instead of an in-process cache array. * @@ -57,31 +90,42 @@ class Memcached_DataObject extends DB_DataObject unset($i); } $i = Memcached_DataObject::getcached($cls, $k, $v); - if ($i) { - return $i; - } else { - $i = DB_DataObject::staticGet($cls, $k, $v); - if ($i) { - // DB_DataObject's in-process lookup cache interferes with GC - // to cause massive memory leaks in long-running processes. - if (php_sapi_name() == 'cli') { - $i->_clear_cache(); - } - - // Now store it into the shared memcached, if present... + if ($i === false) { // false == cache miss + $i = DB_DataObject::factory($cls); + if (empty($i)) { + $i = false; + return $i; + } + $result = $i->get($k, $v); + if ($result) { + // Hit! $i->encache(); + } else { + // save the fact that no such row exists + $c = self::memcache(); + if (!empty($c)) { + $ck = self::cachekey($cls, $k, $v); + $c->set($ck, null); + } + $i = false; } - return $i; } + return $i; } - function &pkeyGet($cls, $kv) + /** + * @fixme Should this return false on lookup fail to match staticGet? + */ + function pkeyGet($cls, $kv) { $i = Memcached_DataObject::multicache($cls, $kv); - if ($i) { + if ($i !== false) { // false == cache miss return $i; } else { - $i = new $cls(); + $i = DB_DataObject::factory($cls); + if (empty($i)) { + return false; + } foreach ($kv as $k => $v) { $i->$k = $v; } @@ -89,6 +133,11 @@ class Memcached_DataObject extends DB_DataObject $i->encache(); } else { $i = null; + $c = self::memcache(); + if (!empty($c)) { + $ck = self::multicacheKey($cls, $kv); + $c->set($ck, null); + } } return $i; } @@ -97,6 +146,9 @@ class Memcached_DataObject extends DB_DataObject function insert() { $result = parent::insert(); + if ($result) { + $this->encache(); // in case of cached negative lookups + } return $result; } @@ -123,7 +175,7 @@ class Memcached_DataObject extends DB_DataObject } static function cacheKey($cls, $k, $v) { - if (is_object($cls) || is_object($j) || is_object($v)) { + if (is_object($cls) || is_object($k) || is_object($v)) { $e = new Exception(); common_log(LOG_ERR, __METHOD__ . ' object in param: ' . str_replace("\n", " ", $e->getTraceAsString())); @@ -142,6 +194,17 @@ class Memcached_DataObject extends DB_DataObject function keyTypes() { + // ini-based classes return number-indexed arrays. handbuilt + // classes return column => keytype. Make this uniform. + + $keys = $this->keys(); + + $keyskeys = array_keys($keys); + + if (is_string($keyskeys[0])) { + return $keys; + } + global $_DB_DATAOBJECT; if (!isset($_DB_DATAOBJECT['INI'][$this->_database][$this->__table."__keys"])) { $this->databaseStructure(); @@ -153,67 +216,90 @@ class Memcached_DataObject extends DB_DataObject function encache() { $c = $this->memcache(); + if (!$c) { return false; - } else { - $pkey = array(); - $pval = array(); - $types = $this->keyTypes(); - ksort($types); - foreach ($types as $key => $type) { - if ($type == 'K') { - $pkey[] = $key; - $pval[] = $this->$key; - } else { - $c->set($this->cacheKey($this->tableName(), $key, $this->$key), $this); - } - } - # XXX: should work for both compound and scalar pkeys - $pvals = implode(',', $pval); - $pkeys = implode(',', $pkey); - $c->set($this->cacheKey($this->tableName(), $pkeys, $pvals), $this); + } + + $keys = $this->_allCacheKeys(); + + foreach ($keys as $key) { + $c->set($key, $this); } } function decache() { $c = $this->memcache(); + if (!$c) { return false; - } else { - $pkey = array(); - $pval = array(); - $types = $this->keyTypes(); - ksort($types); - foreach ($types as $key => $type) { - if ($type == 'K') { - $pkey[] = $key; - $pval[] = $this->$key; - } else { - $c->delete($this->cacheKey($this->tableName(), $key, $this->$key)); + } + + $keys = $this->_allCacheKeys(); + + foreach ($keys as $key) { + $c->delete($key, $this); + } + } + + function _allCacheKeys() + { + $ckeys = array(); + + $types = $this->keyTypes(); + ksort($types); + + $pkey = array(); + $pval = array(); + + foreach ($types as $key => $type) { + + assert(!empty($key)); + + if ($type == 'U') { + if (empty($this->$key)) { + continue; } + $ckeys[] = $this->cacheKey($this->tableName(), $key, $this->$key); + } else if ($type == 'K' || $type == 'N') { + $pkey[] = $key; + $pval[] = $this->$key; + } else { + throw new Exception("Unknown key type $key => $type for " . $this->tableName()); } - # should work for both compound and scalar pkeys - # XXX: comma works for now but may not be safe separator for future keys - $pvals = implode(',', $pval); - $pkeys = implode(',', $pkey); - $c->delete($this->cacheKey($this->tableName(), $pkeys, $pvals)); } + + assert(count($pkey) > 0); + + // XXX: should work for both compound and scalar pkeys + $pvals = implode(',', $pval); + $pkeys = implode(',', $pkey); + + $ckeys[] = $this->cacheKey($this->tableName(), $pkeys, $pvals); + + return $ckeys; } function multicache($cls, $kv) { ksort($kv); - $c = Memcached_DataObject::memcache(); + $c = self::memcache(); if (!$c) { return false; } else { - $pkeys = implode(',', array_keys($kv)); - $pvals = implode(',', array_values($kv)); - return $c->get(Memcached_DataObject::cacheKey($cls, $pkeys, $pvals)); + return $c->get(self::multicacheKey($cls, $kv)); } } + static function multicacheKey($cls, $kv) + { + ksort($kv); + $pkeys = implode(',', array_keys($kv)); + $pvals = implode(',', array_values($kv)); + return self::cacheKey($cls, $pkeys, $pvals); + } + function getSearchEngine($table) { require_once INSTALLDIR.'/lib/search_engines.php'; @@ -248,7 +334,8 @@ class Memcached_DataObject extends DB_DataObject $key_part = common_keyize($cls).':'.md5($qry); $ckey = common_cache_key($key_part); $stored = $c->get($ckey); - if ($stored) { + + if ($stored !== false) { return new ArrayWrapper($stored); } diff --git a/classes/Notice.php b/classes/Notice.php index 7651d8bd5..9bda47827 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -63,7 +63,7 @@ class Notice extends Memcached_DataObject public $created; // datetime multiple_key not_null default_0000-00-00%2000%3A00%3A00 public $modified; // timestamp not_null default_CURRENT_TIMESTAMP public $reply_to; // int(4) - public $is_local; // tinyint(1) + public $is_local; // int(4) public $source; // varchar(32) public $conversation; // int(4) public $lat; // decimal(10,7) @@ -214,7 +214,7 @@ class Notice extends Memcached_DataObject extract($options); } - if (empty($is_local)) { + if (!isset($is_local)) { $is_local = Notice::LOCAL_PUBLIC; } @@ -289,21 +289,11 @@ class Notice extends Memcached_DataObject if (!empty($lat) && !empty($lon)) { $notice->lat = $lat; $notice->lon = $lon; + } + + if (!empty($location_ns) && !empty($location_id)) { $notice->location_id = $location_id; $notice->location_ns = $location_ns; - } else if (!empty($location_ns) && !empty($location_id)) { - $location = Location::fromId($location_id, $location_ns); - if (!empty($location)) { - $notice->lat = $location->lat; - $notice->lon = $location->lon; - $notice->location_id = $location_id; - $notice->location_ns = $location_ns; - } - } else { - $notice->lat = $profile->lat; - $notice->lon = $profile->lon; - $notice->location_id = $profile->location_id; - $notice->location_ns = $profile->location_ns; } if (Event::handle('StartNoticeSave', array(&$notice))) { @@ -1139,7 +1129,7 @@ class Notice extends Memcached_DataObject $xs->element('id', null, $this->uri); $xs->element('published', null, common_date_w3dtf($this->created)); - $xs->element('updated', null, common_date_w3dtf($this->modified)); + $xs->element('updated', null, common_date_w3dtf($this->created)); if ($this->reply_to) { $reply_notice = Notice::staticGet('id', $this->reply_to); @@ -1217,7 +1207,7 @@ class Notice extends Memcached_DataObject $idstr = $cache->get($idkey); - if (!empty($idstr)) { + if ($idstr !== false) { // Cache hit! Woohoo! $window = explode(',', $idstr); $ids = array_slice($window, $offset, $limit); @@ -1226,7 +1216,7 @@ class Notice extends Memcached_DataObject $laststr = $cache->get($idkey.';last'); - if (!empty($laststr)) { + if ($laststr !== false) { $window = explode(',', $laststr); $last_id = $window[0]; $new_ids = call_user_func_array($fn, array_merge($args, array(0, NOTICE_CACHE_WINDOW, @@ -1366,12 +1356,21 @@ class Notice extends Memcached_DataObject { $author = Profile::staticGet('id', $this->profile_id); - // FIXME: truncate on long repeats...? - $content = sprintf(_('RT @%1$s %2$s'), $author->nickname, $this->content); + $maxlen = common_config('site', 'textlimit'); + if ($maxlen > 0 && mb_strlen($content) > $maxlen) { + // Web interface and current Twitter API clients will + // pull the original notice's text, but some older + // clients and RSS/Atom feeds will see this trimmed text. + // + // Unfortunately this is likely to lose tags or URLs + // at the end of long notices. + $content = mb_substr($content, 0, $maxlen - 4) . ' ...'; + } + return self::saveNew($repeater_id, $content, $source, array('repeat_of' => $this->id)); } @@ -1386,7 +1385,7 @@ class Notice extends Memcached_DataObject $ids = $this->_repeatStreamDirect($limit); } else { $idstr = $cache->get(common_cache_key('notice:repeats:'.$this->id)); - if (!empty($idstr)) { + if ($idstr !== false) { $ids = explode(',', $idstr); } else { $ids = $this->_repeatStreamDirect(100); @@ -1429,4 +1428,47 @@ class Notice extends Memcached_DataObject return $ids; } + + function locationOptions($lat, $lon, $location_id, $location_ns, $profile = null) + { + $options = array(); + + if (!empty($location_id) && !empty($location_ns)) { + + $options['location_id'] = $location_id; + $options['location_ns'] = $location_ns; + + $location = Location::fromId($location_id, $location_ns); + + if (!empty($location)) { + $options['lat'] = $location->lat; + $options['lon'] = $location->lon; + } + + } else if (!empty($lat) && !empty($lon)) { + + $options['lat'] = $lat; + $options['lon'] = $lon; + + $location = Location::fromLatLon($lat, $lon); + + if (!empty($location)) { + $options['location_id'] = $location->location_id; + $options['location_ns'] = $location->location_ns; + } + } else if (!empty($profile)) { + + if (isset($profile->lat) && isset($profile->lon)) { + $options['lat'] = $profile->lat; + $options['lon'] = $profile->lon; + } + + if (isset($profile->location_id) && isset($profile->location_ns)) { + $options['location_id'] = $profile->location_id; + $options['location_ns'] = $profile->location_ns; + } + } + + return $options; + } } diff --git a/classes/Notice_inbox.php b/classes/Notice_inbox.php index b39006542..e350e6e2f 100644 --- a/classes/Notice_inbox.php +++ b/classes/Notice_inbox.php @@ -101,11 +101,18 @@ class Notice_inbox extends Memcached_DataObject return $ids; } - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Notice_inbox', $kv); } + /** + * Trim inbox for a given user to latest NOTICE_INBOX_LIMIT items + * (up to NOTICE_INBOX_GC_MAX will be deleted). + * + * @param int $user_id + * @return int count of notices dropped from the inbox, if any + */ static function gc($user_id) { $entry = new Notice_inbox(); @@ -133,6 +140,8 @@ class Notice_inbox extends Memcached_DataObject $notices = array(); } } + + return $total; } static function deleteMatching($user_id, $notices) diff --git a/classes/Notice_tag.php b/classes/Notice_tag.php index 02740280f..79231f0b0 100644 --- a/classes/Notice_tag.php +++ b/classes/Notice_tag.php @@ -96,7 +96,7 @@ class Notice_tag extends Memcached_DataObject } } - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Notice_tag', $kv); } diff --git a/classes/Profile.php b/classes/Profile.php index 03196447b..25d908dbf 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -504,6 +504,7 @@ class Profile extends Memcached_DataObject 'Reply', 'Group_member', ); + Event::handle('ProfileDeleteRelated', array($this, &$related)); foreach ($related as $cls) { $inst = new $cls(); diff --git a/classes/Profile_role.php b/classes/Profile_role.php index afa7fb74e..74aca3730 100644 --- a/classes/Profile_role.php +++ b/classes/Profile_role.php @@ -43,7 +43,7 @@ class Profile_role extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Profile_role', $kv); } diff --git a/classes/Queue_item.php b/classes/Queue_item.php index 295c321b5..9c673540d 100644 --- a/classes/Queue_item.php +++ b/classes/Queue_item.php @@ -55,7 +55,7 @@ class Queue_item extends Memcached_DataObject return null; } - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Queue_item', $kv); } diff --git a/classes/Subscription.php b/classes/Subscription.php index fedfd5f19..faf1331cd 100644 --- a/classes/Subscription.php +++ b/classes/Subscription.php @@ -46,7 +46,7 @@ class Subscription extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('Subscription', $kv); } diff --git a/classes/User.php b/classes/User.php index 484dc8c82..34151778c 100644 --- a/classes/User.php +++ b/classes/User.php @@ -625,7 +625,11 @@ class User extends Memcached_DataObject // Cancel their subscription, if it exists - subs_unsubscribe_to($other->getUser(),$this->getProfile()); + $otherUser = User::staticGet('id', $other->id); + + if (!empty($otherUser)) { + subs_unsubscribe_to($otherUser, $this->getProfile()); + } $block->query('COMMIT'); @@ -992,4 +996,28 @@ class User extends Memcached_DataObject return $ids; } + + function shareLocation() + { + $cfg = common_config('location', 'share'); + + if ($cfg == 'always') { + return true; + } else if ($cfg == 'never') { + return false; + } else { // user + $share = true; + + $prefs = User_location_prefs::staticGet('user_id', $this->id); + + if (empty($prefs)) { + $share = common_config('location', 'sharedefault'); + } else { + $share = $prefs->share_location; + $prefs->free(); + } + + return $share; + } + } } diff --git a/classes/User_location_prefs.php b/classes/User_location_prefs.php new file mode 100644 index 000000000..bd6029f97 --- /dev/null +++ b/classes/User_location_prefs.php @@ -0,0 +1,53 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Data class for user location preferences + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Data + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +require_once INSTALLDIR.'/classes/Memcached_DataObject.php'; + +class User_location_prefs extends Memcached_DataObject +{ + ###START_AUTOCODE + /* the code below is auto generated do not remove the above tag */ + + public $__table = 'user_location_prefs'; // table name + public $user_id; // int(4) primary_key not_null + public $share_location; // tinyint(1) default_1 + public $created; // datetime not_null default_0000-00-00%2000%3A00%3A00 + public $modified; // timestamp not_null default_CURRENT_TIMESTAMP + + /* Static get */ + function staticGet($k,$v=NULL) { return Memcached_DataObject::staticGet('User_location_prefs',$k,$v); } + + /* the code above is auto generated do not remove the tag below */ + ###END_AUTOCODE + + function sequenceKey() + { + return array(false, false, false); + } +} diff --git a/plugins/Authentication/User_username.php b/classes/User_username.php index 853fd5cb8..853fd5cb8 100644 --- a/plugins/Authentication/User_username.php +++ b/classes/User_username.php diff --git a/classes/statusnet.ini b/classes/statusnet.ini index 2cc37dbfe..0db2c5d6e 100644 --- a/classes/statusnet.ini +++ b/classes/statusnet.ini @@ -1,4 +1,3 @@ - [avatar] profile_id = 129 original = 17 @@ -93,6 +92,7 @@ modified = 384 [file__keys] id = N +url = U [file_oembed] file_id = 129 @@ -564,4 +564,14 @@ modified = 384 [user_openid__keys] trustroot = K -user_id = K
\ No newline at end of file +user_id = K + +[user_location_prefs] +user_id = 129 +share_location = 17 +created = 142 +modified = 384 + +[user_location_prefs__keys] +user_id = K + diff --git a/config.php.sample b/config.php.sample index 63daf8663..2aa9326a4 100644 --- a/config.php.sample +++ b/config.php.sample @@ -41,6 +41,20 @@ $config['site']['path'] = 'statusnet'; // Make the site invisible to non-logged-in users // $config['site']['private'] = true; +// If your web server supports X-Sendfile (Apache with mod_xsendfile, +// lighttpd, nginx), you can enable X-Sendfile support for better +// performance. Presently, only attachment serving when the site is +// in private mode will use X-Sendfile. +// $config['site']['X-Sendfile'] = false; +// You may also need to enable X-Sendfile support for your web server and +// allow it to access files outside of the web root. For Apache with +// mod_xsendfile, you can add these to your .htaccess or server config: +// +// XSendFile on +// XSendFileAllowAbove on +// +// See http://tn123.ath.cx/mod_xsendfile/ for mod_xsendfile. + // If you want logging sent to a file instead of syslog // $config['site']['logfile'] = '/tmp/statusnet.log'; @@ -265,6 +279,7 @@ $config['sphinx']['port'] = 3312; // $config['attachments']['user_quota'] = 50000000; // $config['attachments']['monthly_quota'] = 15000000; // $config['attachments']['uploads'] = true; -// $config['attachments']['path'] = "/file/"; +// $config['attachments']['path'] = "/file/"; //ignored if site is private +// $config['attachments']['dir'] = INSTALLDIR . '/file/'; // $config['oohembed']['endpoint'] = 'http://oohembed.com/oohembed/'; diff --git a/db/08to09.sql b/db/08to09.sql index 28ec3ec16..d9c25bc72 100644 --- a/db/08to09.sql +++ b/db/08to09.sql @@ -84,3 +84,13 @@ create table login_token ( constraint primary key (user_id) ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin; + +create table user_location_prefs ( + user_id integer not null comment 'user who has the preference' references user (id), + share_location tinyint default 1 comment 'Whether to share location data', + created datetime not null comment 'date this record was created', + modified timestamp comment 'date this record was modified', + + constraint primary key (user_id) +) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin; + diff --git a/db/statusnet.sql b/db/statusnet.sql index 6b3c2ca06..94b03df63 100644 --- a/db/statusnet.sql +++ b/db/statusnet.sql @@ -587,3 +587,12 @@ create table login_token ( constraint primary key (user_id) ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin; +create table user_location_prefs ( + user_id integer not null comment 'user who has the preference' references user (id), + share_location tinyint default 1 comment 'Whether to share location data', + created datetime not null comment 'date this record was created', + modified timestamp comment 'date this record was modified', + + constraint primary key (user_id) +) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin; + diff --git a/extlib/lgpl-2.1.txt b/extlib/lgpl-2.1.txt new file mode 100644 index 000000000..3b473dbfc --- /dev/null +++ b/extlib/lgpl-2.1.txt @@ -0,0 +1,458 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS diff --git a/htaccess.sample b/htaccess.sample index 91ae9da9b..37eb8e01e 100644 --- a/htaccess.sample +++ b/htaccess.sample @@ -5,14 +5,6 @@ RewriteBase /mublog/ - # If your site is private and want to only allow logged-in users to - # be able to download file attachments, uncomment this rule. - # - # If you have a custom attachment path - # ($config['attachments']['path']), change "file/" to match. - # - #RewriteRule ^file/(.*) getfile/$1 - RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule (.*) index.php?p=$1 [L,QSA] diff --git a/install.php b/install.php index 1c62bb2b2..435f6d63b 100644 --- a/install.php +++ b/install.php @@ -454,7 +454,6 @@ function showForm() <dd> <div class="instructions"> <p>Enter your database connection information below to initialize the database.</p> - <p>StatusNet bundles a number of libraries for ease of installation. <a href="?checklibs=true">You can see what bundled libraries you are using, versus what libraries are installed on your server.</a> </div> </dd> </dl> diff --git a/js/geometa.js b/js/geometa.js index 21deb1885..87e3c99a1 100644 --- a/js/geometa.js +++ b/js/geometa.js @@ -1,4 +1,4 @@ -// A shim to implement the W3C Geolocation API Specification using Gears or the Ajax API +// A shim to implement the W3C Geolocation API Specification using Gears if (typeof navigator.geolocation == "undefined" || navigator.geolocation.shim ) (function(){ // -- BEGIN GEARS_INIT @@ -96,122 +96,9 @@ var GearsGeoLocation = (function() { }; }); -var AjaxGeoLocation = (function() { - // -- PRIVATE - var loading = false; - var loadGoogleLoader = function() { - if (!hasGoogleLoader() && !loading) { - loading = true; - var s = document.createElement('script'); - s.src = (document.location.protocol == "https:"?"https://":"http://") + 'www.google.com/jsapi?callback=_google_loader_apiLoaded'; - s.type = "text/javascript"; - document.getElementsByTagName('body')[0].appendChild(s); - } - }; - - var queue = []; - var addLocationQueue = function(callback) { - queue.push(callback); - } - - var runLocationQueue = function() { - if (hasGoogleLoader()) { - while (queue.length > 0) { - var call = queue.pop(); - call(); - } - } - } - - window['_google_loader_apiLoaded'] = function() { - runLocationQueue(); - } - - var hasGoogleLoader = function() { - return (window['google'] && google['loader']); - } - - var checkGoogleLoader = function(callback) { - if (hasGoogleLoader()) return true; - - addLocationQueue(callback); - - loadGoogleLoader(); - - return false; - }; - - loadGoogleLoader(); // start to load as soon as possible just in case - - // -- PUBLIC - return { - shim: true, - - type: "ClientLocation", - - lastPosition: null, - - getCurrentPosition: function(successCallback, errorCallback, options) { - var self = this; - if (!checkGoogleLoader(function() { - self.getCurrentPosition(successCallback, errorCallback, options); - })) return; - - if (google.loader.ClientLocation) { - var cl = google.loader.ClientLocation; - - var position = { - coords: { - latitude: cl.latitude, - longitude: cl.longitude, - altitude: null, - accuracy: 43000, // same as Gears accuracy over wifi? - altitudeAccuracy: null, - heading: null, - speed: null, - }, - // extra info that is outside of the bounds of the core API - address: { - city: cl.address.city, - country: cl.address.country, - country_code: cl.address.country_code, - region: cl.address.region - }, - timestamp: new Date() - }; - - successCallback(position); - - this.lastPosition = position; - } else if (errorCallback === "function") { - errorCallback({ code: 3, message: "Using the Google ClientLocation API and it is not able to calculate a location."}); - } - }, - - watchPosition: function(successCallback, errorCallback, options) { - this.getCurrentPosition(successCallback, errorCallback, options); - - var self = this; - var watchId = setInterval(function() { - self.getCurrentPosition(successCallback, errorCallback, options); - }, 10000); - - return watchId; - }, - - clearWatch: function(watchId) { - clearInterval(watchId); - }, - - getPermission: function(siteName, imageUrl, extraMessage) { - // for now just say yes :) - return true; - } - - }; -}); - -// If you have Gears installed use that, else use Ajax ClientLocation -navigator.geolocation = (window.google && google.gears) ? GearsGeoLocation() : AjaxGeoLocation(); +// If you have Gears installed use that +if (window.google && google.gears) { + navigator.geolocation = GearsGeoLocation(); +} })(); diff --git a/js/jquery.cookie.js b/js/jquery.cookie.js new file mode 100644 index 000000000..6df1faca2 --- /dev/null +++ b/js/jquery.cookie.js @@ -0,0 +1,96 @@ +/** + * Cookie plugin + * + * Copyright (c) 2006 Klaus Hartl (stilbuero.de) + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + * + */ + +/** + * Create a cookie with the given name and value and other optional parameters. + * + * @example $.cookie('the_cookie', 'the_value'); + * @desc Set the value of a cookie. + * @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true }); + * @desc Create a cookie with all available options. + * @example $.cookie('the_cookie', 'the_value'); + * @desc Create a session cookie. + * @example $.cookie('the_cookie', null); + * @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain + * used when the cookie was set. + * + * @param String name The name of the cookie. + * @param String value The value of the cookie. + * @param Object options An object literal containing key/value pairs to provide optional cookie attributes. + * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object. + * If a negative value is specified (e.g. a date in the past), the cookie will be deleted. + * If set to null or omitted, the cookie will be a session cookie and will not be retained + * when the the browser exits. + * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie). + * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie). + * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will + * require a secure protocol (like HTTPS). + * @type undefined + * + * @name $.cookie + * @cat Plugins/Cookie + * @author Klaus Hartl/klaus.hartl@stilbuero.de + */ + +/** + * Get the value of a cookie with the given name. + * + * @example $.cookie('the_cookie'); + * @desc Get the value of a cookie. + * + * @param String name The name of the cookie. + * @return The value of the cookie. + * @type String + * + * @name $.cookie + * @cat Plugins/Cookie + * @author Klaus Hartl/klaus.hartl@stilbuero.de + */ +jQuery.cookie = function(name, value, options) { + if (typeof value != 'undefined') { // name and value given, set cookie + options = options || {}; + if (value === null) { + value = ''; + options.expires = -1; + } + var expires = ''; + if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) { + var date; + if (typeof options.expires == 'number') { + date = new Date(); + date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000)); + } else { + date = options.expires; + } + expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE + } + // CAUTION: Needed to parenthesize options.path and options.domain + // in the following expressions, otherwise they evaluate to undefined + // in the packed version for some reason... + var path = options.path ? '; path=' + (options.path) : ''; + var domain = options.domain ? '; domain=' + (options.domain) : ''; + var secure = options.secure ? '; secure' : ''; + document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join(''); + } else { // only name given, get cookie + var cookieValue = null; + if (document.cookie && document.cookie != '') { + var cookies = document.cookie.split(';'); + for (var i = 0; i < cookies.length; i++) { + var cookie = jQuery.trim(cookies[i]); + // Does this cookie string begin with the name we want? + if (cookie.substring(0, name.length + 1) == (name + '=')) { + cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); + break; + } + } + } + return cookieValue; + } +};
\ No newline at end of file diff --git a/js/json2.js b/js/json2.js new file mode 100644 index 000000000..ecd5e959c --- /dev/null +++ b/js/json2.js @@ -0,0 +1,4 @@ +/* +http://www.JSON.org/json2.js minified +*/ +if(!this.JSON){JSON={};}(function(){function f(n){return n<10?'0'+n:n;}if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return this.getUTCFullYear()+'-'+f(this.getUTCMonth()+1)+'-'+f(this.getUTCDate())+'T'+f(this.getUTCHours())+':'+f(this.getUTCMinutes())+':'+f(this.getUTCSeconds())+'Z';};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}if(typeof rep==='function'){value=rep.call(holder,key,value);}switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}v=partial.length===0?'[]':gap?'[\n'+gap+partial.join(',\n'+gap)+'\n'+mind+']':'['+partial.join(',')+']';gap=mind;return v;}if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}return str('',{'':value});};}if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}return reviver.call(holder,key,value);}cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}throw new SyntaxError('JSON.parse');};}}()); diff --git a/js/util.js b/js/util.js index 0987c6cc0..0314668d9 100644 --- a/js/util.js +++ b/js/util.js @@ -50,7 +50,11 @@ var SN = { // StatusNet NoticeLat: 'notice_data-lat', NoticeLon: 'notice_data-lon', NoticeLocationId: 'notice_data-location_id', - NoticeLocationNs: 'notice_data-location_ns' + NoticeLocationNs: 'notice_data-location_ns', + NoticeGeoName: 'notice_data-geo_name', + NoticeDataGeo: 'notice_data-geo', + NoticeDataGeoCookie: 'notice_data-geo_cookie', + NoticeDataGeoSelected: 'notice_data-geo_selected' } }, @@ -174,12 +178,13 @@ var SN = { // StatusNet }, FormNoticeXHR: function(form) { + var NDG, NLat, NLon, NLNS, NLID; form_id = form.attr('id'); form.append('<input type="hidden" name="ajax" value="1"/>'); form.ajaxForm({ dataType: 'xml', timeout: '60000', - beforeSend: function(xhr) { + beforeSend: function(formData) { if ($('#'+form_id+' #'+SN.C.S.NoticeDataText)[0].value.length === 0) { form.addClass(SN.C.S.Warning); return false; @@ -187,6 +192,29 @@ var SN = { // StatusNet form.addClass(SN.C.S.Processing); $('#'+form_id+' #'+SN.C.S.NoticeActionSubmit).addClass(SN.C.S.Disabled); $('#'+form_id+' #'+SN.C.S.NoticeActionSubmit).attr(SN.C.S.Disabled, SN.C.S.Disabled); + + NLat = $('#'+SN.C.S.NoticeLat).val(); + NLon = $('#'+SN.C.S.NoticeLon).val(); + NLNS = $('#'+SN.C.S.NoticeLocationNs).val(); + NLID = $('#'+SN.C.S.NoticeLocationId).val(); + NDG = $('#'+SN.C.S.NoticeDataGeo).attr('checked'); + + cookieValue = $.cookie(SN.C.S.NoticeDataGeoCookie); + + if (cookieValue !== null && cookieValue != 'disabled') { + cookieValue = JSON.parse(cookieValue); + NLat = $('#'+SN.C.S.NoticeLat).val(cookieValue.NLat).val(); + NLon = $('#'+SN.C.S.NoticeLon).val(cookieValue.NLon).val(); + NLNS = $('#'+SN.C.S.NoticeLocationNs).val(cookieValue.NLNS).val(); + NLID = $('#'+SN.C.S.NoticeLocationId).val(cookieValue.NLID).val(); + } + if (cookieValue == 'disabled') { + NDG = $('#'+SN.C.S.NoticeDataGeo).attr('checked', false).attr('checked'); + } + else { + NDG = $('#'+SN.C.S.NoticeDataGeo).attr('checked', true).attr('checked'); + } + return true; }, error: function (xhr, textStatus, errorThrown) { @@ -269,6 +297,12 @@ var SN = { // StatusNet form.removeClass(SN.C.S.Processing); $('#'+form_id+' #'+SN.C.S.NoticeActionSubmit).removeAttr(SN.C.S.Disabled); $('#'+form_id+' #'+SN.C.S.NoticeActionSubmit).removeClass(SN.C.S.Disabled); + + $('#'+SN.C.S.NoticeLat).val(NLat); + $('#'+SN.C.S.NoticeLon).val(NLon); + $('#'+SN.C.S.NoticeLocationNs).val(NLNS); + $('#'+SN.C.S.NoticeLocationId).val(NLID); + $('#'+SN.C.S.NoticeDataGeo).attr('checked', NDG); } }); }, @@ -431,15 +465,228 @@ var SN = { // StatusNet $('#'+SN.C.S.NoticeDataAttachSelected+' button').click(function(){ $('#'+SN.C.S.NoticeDataAttachSelected).remove(); NDA.val(''); + + return false; }); }); }, NoticeLocationAttach: function() { - if(navigator.geolocation) navigator.geolocation.watchPosition(function(position) { - $('#'+SN.C.S.NoticeLat).val(position.coords.latitude); - $('#'+SN.C.S.NoticeLon).val(position.coords.longitude); - }); + var NLat = $('#'+SN.C.S.NoticeLat).val(); + var NLon = $('#'+SN.C.S.NoticeLon).val(); + var NLNS = $('#'+SN.C.S.NoticeLocationNs).val(); + var NLID = $('#'+SN.C.S.NoticeLocationId).val(); + var NLN = $('#'+SN.C.S.NoticeGeoName).text(); + var NDGe = $('#'+SN.C.S.NoticeDataGeo); + + function removeNoticeDataGeo() { + $('label[for='+SN.C.S.NoticeDataGeo+']').removeClass('checked').attr('title', jQuery.trim($('label[for='+SN.C.S.NoticeDataGeo+']').text())); + $('#'+SN.C.S.NoticeDataGeoSelected).hide(); + + $('#'+SN.C.S.NoticeLat).val(''); + $('#'+SN.C.S.NoticeLon).val(''); + $('#'+SN.C.S.NoticeLocationNs).val(''); + $('#'+SN.C.S.NoticeLocationId).val(''); + $('#'+SN.C.S.NoticeDataGeo).attr('checked', false); + + $.cookie(SN.C.S.NoticeDataGeoCookie, 'disabled'); + } + + function getJSONgeocodeURL(geocodeURL, data) { + $.getJSON(geocodeURL, data, function(location) { + var lns, lid; + + if (typeof(location.location_ns) != 'undefined') { + $('#'+SN.C.S.NoticeLocationNs).val(location.location_ns); + lns = location.location_ns; + } + + if (typeof(location.location_id) != 'undefined') { + $('#'+SN.C.S.NoticeLocationId).val(location.location_id); + lid = location.location_id; + } + + if (typeof(location.name) == 'undefined') { + NLN_text = position.coords.latitude + ';' + position.coords.longitude; + } + else { + NLN_text = location.name; + } + + $('#'+SN.C.S.NoticeGeoName) + .replaceWith('<a id="notice_data-geo_name"/>'); + + $('#'+SN.C.S.NoticeGeoName) + .attr('href', location.url) + .text(NLN_text) + .click(function() { + window.open(location.url); + + return false; + }); + + $('#'+SN.C.S.NoticeLat).val(data.lat); + $('#'+SN.C.S.NoticeLon).val(data.lon); + $('#'+SN.C.S.NoticeLocationNs).val(lns); + $('#'+SN.C.S.NoticeLocationId).val(lid); + $('#'+SN.C.S.NoticeDataGeo).attr('checked', true); + + var cookieValue = { + 'NLat': data.lat, + 'NLon': data.lon, + 'NLNS': lns, + 'NLID': lid, + 'NLN': NLN_text, + 'NLNU': location.url, + 'NDG': true, + 'NDGSM': false + }; + $.cookie(SN.C.S.NoticeDataGeoCookie, JSON.stringify(cookieValue)); + }); + } + + if (NDGe.length > 0) { + if ($.cookie(SN.C.S.NoticeDataGeoCookie) == 'disabled') { + NDGe.attr('checked', false); + } + else { + NDGe.attr('checked', true); + } + + var NGW = $('#notice_data-geo_wrap'); + var geocodeURL = NGW.attr('title'); + NGW.removeAttr('title'); + + $('label[for='+SN.C.S.NoticeDataGeo+']').attr('title', jQuery.trim($('label[for='+SN.C.S.NoticeDataGeo+']').text())); + + NDGe.change(function() { + var NLN = $('#'+SN.C.S.NoticeGeoName); + if (NLN.length > 0) { + NLN.remove(); + } + + if ($('#'+SN.C.S.NoticeDataGeo).attr('checked') === true || $.cookie(SN.C.S.NoticeDataGeoCookie) === null) { + $('label[for='+SN.C.S.NoticeDataGeo+']').addClass('checked').attr('title', NoticeDataGeoShareDisable_text); + + var S = '<div id="'+SN.C.S.NoticeDataGeoSelected+'" class="'+SN.C.S.Success+'"/>'; + var NDGS = $('#'+SN.C.S.NoticeDataGeoSelected); + + if (NDGS.length > 0) { + NDGS.replaceWith(S); + } + else { + $('#'+SN.C.S.FormNotice).append(S); + } + + NDGS = $('#'+SN.C.S.NoticeDataGeoSelected); + NDGS.prepend('<span id="'+SN.C.S.NoticeGeoName+'">Geo</span> <button class="minimize" title="'+NoticeDataGeoInfoMinimize_text+'">_</button> <button class="close" title="'+NoticeDataGeoShareDisable_text+'">×</button>'); + + var NLN = $('#'+SN.C.S.NoticeGeoName); + NLN.addClass('processing'); + + $('#'+SN.C.S.NoticeDataGeoSelected+' button.close').click(function(){ + removeNoticeDataGeo(); + + $('#'+SN.C.S.NoticeDataGeoSelected).remove(); + + $('#'+SN.C.S.NoticeDataText).focus(); + + return false; + }); + + $('#'+SN.C.S.NoticeDataGeoSelected+' button.minimize').click(function(){ + $('#'+SN.C.S.NoticeDataGeoSelected).hide(); + + var cookieValue = { + 'NLat': $('#'+SN.C.S.NoticeLat).val(), + 'NLon': $('#'+SN.C.S.NoticeLat).val(), + 'NLNS': $('#'+SN.C.S.NoticeLocationNs).val(), + 'NLID': $('#'+SN.C.S.NoticeLocationId).val(), + 'NLN': $('#'+SN.C.S.NoticeGeoName).text(), + 'NLNU': $('#'+SN.C.S.NoticeGeoName).attr('href'), + 'NDG': true, + 'NDGSM': true + }; + $.cookie(SN.C.S.NoticeDataGeoCookie, JSON.stringify(cookieValue)); + + $('#'+SN.C.S.NoticeDataText).focus(); + + return false; + }); + + if ($.cookie(SN.C.S.NoticeDataGeoCookie) === null || $.cookie(SN.C.S.NoticeDataGeoCookie) == 'disabled') { + if (navigator.geolocation) { + navigator.geolocation.getCurrentPosition( + function(position) { + $('#'+SN.C.S.NoticeLat).val(position.coords.latitude); + $('#'+SN.C.S.NoticeLon).val(position.coords.longitude); + + var data = { + 'lat': position.coords.latitude, + 'lon': position.coords.longitude, + 'token': $('#token').val() + }; + + getJSONgeocodeURL(geocodeURL, data); + }, + + function(error) { + if (error.PERMISSION_DENIED == 1) { + removeNoticeDataGeo(); + } + } + ); + } + else { + if (NLat.length > 0 && NLon.length > 0) { + var data = { + 'lat': NLat, + 'lon': NLon, + 'token': $('#token').val() + }; + + getJSONgeocodeURL(geocodeURL, data); + } + else { + removeNoticeDataGeo(); + $('#'+SN.C.S.NoticeDataGeo).remove(); + $('label[for='+SN.C.S.NoticeDataGeo+']').remove(); + } + } + } + else { + var cookieValue = JSON.parse($.cookie(SN.C.S.NoticeDataGeoCookie)); + + if (cookieValue.NDGSM === true) { + $('#'+SN.C.S.NoticeDataGeoSelected).hide(); + } + + $('#'+SN.C.S.NoticeLat).val(cookieValue.NLat); + $('#'+SN.C.S.NoticeLon).val(cookieValue.NLon); + $('#'+SN.C.S.NoticeLocationNs).val(cookieValue.NLNS); + $('#'+SN.C.S.NoticeLocationId).val(cookieValue.NLID); + $('#'+SN.C.S.NoticeDataGeo).attr('checked', cookieValue.NDG); + + $('#'+SN.C.S.NoticeGeoName) + .replaceWith('<a id="notice_data-geo_name"/>'); + + $('#'+SN.C.S.NoticeGeoName) + .attr('href', cookieValue.NLNU) + .text(cookieValue.NLN) + .click(function() { + window.open($(this).attr('href')); + + return false; + }); + } + } + else { + removeNoticeDataGeo(); + } + + $('#'+SN.C.S.NoticeDataText).focus(); + }).change(); + } }, NewDirectMessage: function() { @@ -474,13 +721,14 @@ var SN = { // StatusNet Init: { NoticeForm: function() { if ($('body.user_in').length > 0) { + SN.U.NoticeLocationAttach(); + $('.'+SN.C.S.FormNotice).each(function() { SN.U.FormNoticeXHR($(this)); SN.U.FormNoticeEnhancements($(this)); }); SN.U.NoticeDataAttach(); - SN.U.NoticeLocationAttach(); } }, diff --git a/lib/action.php b/lib/action.php index dac0e2583..1b4cb5cec 100644 --- a/lib/action.php +++ b/lib/action.php @@ -252,6 +252,8 @@ class Action extends HTMLOutputter // lawsuit if (Event::handle('StartShowJQueryScripts', array($this))) { $this->script('js/jquery.min.js'); $this->script('js/jquery.form.js'); + $this->script('js/jquery.cookie.js'); + $this->script('js/json2.js'); $this->script('js/jquery.joverlay.min.js'); Event::handle('EndShowJQueryScripts', array($this)); } @@ -735,6 +737,8 @@ class Action extends HTMLOutputter // lawsuit _('Privacy')); $this->menuItem(common_local_url('doc', array('title' => 'source')), _('Source')); + $this->menuItem(common_local_url('version'), + _('Version')); $this->menuItem(common_local_url('doc', array('title' => 'contact')), _('Contact')); $this->menuItem(common_local_url('doc', array('title' => 'badge')), diff --git a/lib/adminpanelaction.php b/lib/adminpanelaction.php index 7997eb2b1..a6981ac61 100644 --- a/lib/adminpanelaction.php +++ b/lib/adminpanelaction.php @@ -70,7 +70,7 @@ class AdminPanelAction extends Action if (!common_logged_in()) { $this->clientError(_('Not logged in.')); - return; + return false; } $user = common_current_user(); @@ -94,7 +94,18 @@ class AdminPanelAction extends Action if (!$user->hasRight(Right::CONFIGURESITE)) { $this->clientError(_('You cannot make changes to this site.')); - return; + return false; + } + + // This panel must be enabled + + $name = $this->trimmed('action'); + + $name = mb_substr($name, 0, -10); + + if (!in_array($name, common_config('admin', 'panels'))) { + $this->clientError(_('Changes to that panel are not allowed.'), 403); + return false; } return true; @@ -224,7 +235,7 @@ class AdminPanelAction extends Action $this->clientError(_('saveSettings() not implemented.')); return; } - + /** * Delete a design setting * @@ -296,20 +307,33 @@ class AdminPanelNav extends Widget if (Event::handle('StartAdminPanelNav', array($this))) { - $this->out->menuItem(common_local_url('siteadminpanel'), _('Site'), - _('Basic site configuration'), $action_name == 'siteadminpanel', 'nav_site_admin_panel'); + if ($this->canAdmin('site')) { + $this->out->menuItem(common_local_url('siteadminpanel'), _('Site'), + _('Basic site configuration'), $action_name == 'siteadminpanel', 'nav_site_admin_panel'); + } - $this->out->menuItem(common_local_url('designadminpanel'), _('Design'), - _('Design configuration'), $action_name == 'designadminpanel', 'nav_design_admin_panel'); + if ($this->canAdmin('design')) { + $this->out->menuItem(common_local_url('designadminpanel'), _('Design'), + _('Design configuration'), $action_name == 'designadminpanel', 'nav_design_admin_panel'); + } - $this->out->menuItem(common_local_url('useradminpanel'), _('User'), - _('Paths configuration'), $action_name == 'useradminpanel', 'nav_design_admin_panel'); + if ($this->canAdmin('user')) { + $this->out->menuItem(common_local_url('useradminpanel'), _('User'), + _('Paths configuration'), $action_name == 'useradminpanel', 'nav_design_admin_panel'); + } - $this->out->menuItem(common_local_url('pathsadminpanel'), _('Paths'), - _('Paths configuration'), $action_name == 'pathsadminpanel', 'nav_design_admin_panel'); + if ($this->canAdmin('paths')) { + $this->out->menuItem(common_local_url('pathsadminpanel'), _('Paths'), + _('Paths configuration'), $action_name == 'pathsadminpanel', 'nav_design_admin_panel'); + } Event::handle('EndAdminPanelNav', array($this)); } $this->action->elementEnd('ul'); } + + function canAdmin($name) + { + return in_array($name, common_config('admin', 'panels')); + } } diff --git a/plugins/Authentication/AuthenticationPlugin.php b/lib/authenticationplugin.php index a76848b04..de479a576 100644 --- a/plugins/Authentication/AuthenticationPlugin.php +++ b/lib/authenticationplugin.php @@ -99,6 +99,23 @@ abstract class AuthenticationPlugin extends Plugin } } + /** + * Internal AutoRegister event handler + * @param nickname + * @param provider_name + * @param user - the newly registered user + */ + function onAutoRegister($nickname, $provider_name, &$user) + { + if($provider_name == $this->provider_name && $this->autoregistration){ + $user = $this->autoregister($nickname); + if($user){ + User_username::register($user,$nickname,$this->provider_name); + return false; + } + } + } + function onStartCheckPassword($nickname, $password, &$authenticatedUser){ //map the nickname to a username $user_username = new User_username(); @@ -127,13 +144,13 @@ abstract class AuthenticationPlugin extends Plugin } } }else{ - if($this->autoregistration){ - $authenticated = $this->checkPassword($nickname, $password); - if($authenticated){ - $user = $this->autoregister($nickname); - if($user){ - $authenticatedUser = $user; - User_username::register($authenticatedUser,$nickname,$this->provider_name); + $authenticated = $this->checkPassword($nickname, $password); + if($authenticated){ + if(! Event::handle('AutoRegister', array($nickname, $this->provider_name, &$authenticatedUser))){ + //unlike most Event::handle lines of code, this one has a ! (not) + //we want to do this if the event *was* handled - this isn't a "default" implementation + //like most code of this form. + if($authenticatedUser){ return false; } } @@ -190,18 +207,6 @@ abstract class AuthenticationPlugin extends Plugin } } - function onAutoload($cls) - { - switch ($cls) - { - case 'User_username': - require_once(INSTALLDIR.'/plugins/Authentication/User_username.php'); - return false; - default: - return true; - } - } - function onCheckSchema() { $schema = Schema::get(); $schema->ensureTable('user_username', diff --git a/plugins/Authorization/AuthorizationPlugin.php b/lib/authorizationplugin.php index e4e046d08..733b0c065 100644 --- a/plugins/Authorization/AuthorizationPlugin.php +++ b/lib/authorizationplugin.php @@ -66,9 +66,6 @@ abstract class AuthorizationPlugin extends Plugin } //------------Below are the methods that connect StatusNet to the implementing Auth plugin------------\\ - function onInitializePlugin(){ - - } function onStartSetUser(&$user) { $loginAllowed = $this->loginAllowed($user); diff --git a/lib/cache.php b/lib/cache.php new file mode 100644 index 000000000..b7b34c050 --- /dev/null +++ b/lib/cache.php @@ -0,0 +1,182 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Cache interface plus default in-memory cache implementation + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +/** + * Interface for caching + * + * An abstract interface for caching. Because we originally used the + * Memcache plugin directly, the interface uses a small subset of the + * Memcache interface. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class Cache +{ + var $_items = array(); + static $_inst = null; + + /** + * Singleton constructor + * + * Use this to get the singleton instance of Cache. + * + * @return Cache cache object + */ + + static function instance() + { + if (is_null(self::$_inst)) { + self::$_inst = new Cache(); + } + + return self::$_inst; + } + + /** + * Create a cache key from input text + * + * Builds a cache key from input text. Helps to namespace + * the cache area (if shared with other applications or sites) + * and prevent conflicts. + * + * @param string $extra the real part of the key + * + * @return string full key + */ + + static function key($extra) + { + $base_key = common_config('cache', 'base'); + + if (empty($base_key)) { + $base_key = common_keyize(common_config('site', 'name')); + } + + return 'statusnet:' . $base_key . ':' . $extra; + } + + /** + * Make a string suitable for use as a key + * + * Useful for turning primary keys of tables into cache keys. + * + * @param string $str string to turn into a key + * + * @return string keyized string + */ + + static function keyize($str) + { + $str = strtolower($str); + $str = preg_replace('/\s/', '_', $str); + return $str; + } + + /** + * Get a value associated with a key + * + * The value should have been set previously. + * + * @param string $key Lookup key + * + * @return string retrieved value or null if unfound + */ + + function get($key) + { + $value = false; + + if (Event::handle('StartCacheGet', array(&$key, &$value))) { + if (array_key_exists($key, $this->_items)) { + $value = unserialize($this->_items[$key]); + } + Event::handle('EndCacheGet', array($key, &$value)); + } + + return $value; + } + + /** + * Set the value associated with a key + * + * @param string $key The key to use for lookups + * @param string $value The value to store + * @param integer $flag Flags to use, mostly ignored + * @param integer $expiry Expiry value, mostly ignored + * + * @return boolean success flag + */ + + function set($key, $value, $flag=null, $expiry=null) + { + $success = false; + + if (Event::handle('StartCacheSet', array(&$key, &$value, &$flag, + &$expiry, &$success))) { + + $this->_items[$key] = serialize($value); + + $success = true; + + Event::handle('EndCacheSet', array($key, $value, $flag, + $expiry)); + } + + return $success; + } + + /** + * Delete the value associated with a key + * + * @param string $key Key to delete + * + * @return boolean success flag + */ + + function delete($key) + { + $success = false; + + if (Event::handle('StartCacheDelete', array(&$key, &$success))) { + if (array_key_exists($key, $this->_items)) { + unset($this->_items[$key]); + } + $success = true; + Event::handle('EndCacheDelete', array($key)); + } + + return $success; + } +} diff --git a/lib/columndef.php b/lib/columndef.php index 1bae6b33b..ac2fcd23e 100644 --- a/lib/columndef.php +++ b/lib/columndef.php @@ -74,6 +74,7 @@ class ColumnDef * @param string $key type of key * @param value $default default value * @param value $extra unused + * @param boolean $auto_increment */ function __construct($name=null, $type=null, $size=null, diff --git a/lib/common.php b/lib/common.php index 7fa1910af..fb5e5919e 100644 --- a/lib/common.php +++ b/lib/common.php @@ -210,6 +210,18 @@ if ($_db_name != 'statusnet' && !array_key_exists('ini_'.$_db_name, $config['db' $config['db']['ini_'.$_db_name] = INSTALLDIR.'/classes/statusnet.ini'; } +// Backwards compatibility + +if (array_key_exists('memcached', $config)) { + if ($config['memcached']['enabled']) { + addPlugin('Memcache', array('servers' => $config['memcached']['server'])); + } + + if (!empty($config['memcached']['base'])) { + $config['cache']['base'] = $config['memcached']['base']; + } +} + function __autoload($cls) { if (file_exists(INSTALLDIR.'/classes/' . $cls . '.php')) { @@ -226,6 +238,27 @@ function __autoload($cls) } } +// Load default plugins + +foreach ($config['plugins']['default'] as $name => $params) { + if (is_null($params)) { + addPlugin($name); + } else if (is_array($params)) { + if (count($params) == 0) { + addPlugin($name); + } else { + $keys = array_keys($params); + if (is_string($keys[0])) { + addPlugin($name, $params); + } else { + foreach ($params as $paramset) { + addPlugin($name, $paramset); + } + } + } + } +} + // XXX: how many of these could be auto-loaded on use? // XXX: note that these files should not use config options // at compile time since DB config options are not yet loaded. diff --git a/lib/default.php b/lib/default.php index 42d4623b1..fa862f3ff 100644 --- a/lib/default.php +++ b/lib/default.php @@ -54,6 +54,7 @@ $default = 'dupelimit' => 60, # default for same person saying the same thing 'textlimit' => 140, 'indent' => true, + 'use_x_sendfile' => false, ), 'db' => array('database' => 'YOU HAVE TO SET THIS IN config.php', @@ -147,11 +148,8 @@ $default = array('enabled' => true, 'consumer_key' => null, 'consumer_secret' => null), - 'memcached' => - array('enabled' => false, - 'server' => 'localhost', - 'base' => null, - 'port' => 11211), + 'cache' => + array('base' => null), 'ping' => array('notify' => array()), 'inboxes' => @@ -226,9 +224,29 @@ $default = 'message' => array('contentlimit' => null), 'location' => - array('namespace' => 1), // 1 = geonames, 2 = Yahoo Where on Earth + array('share' => 'user', // whether to share location; 'always', 'user', 'never' + 'sharedefault' => true), 'omb' => array('timeout' => 5), // HTTP request timeout in seconds when contacting remote hosts for OMB updates 'logincommand' => array('disabled' => true), + 'plugins' => + array('default' => array('LilUrl' => array('shortenerName'=>'ur1.ca', + 'freeService' => true, + 'serviceUrl'=>'http://ur1.ca/'), + 'PtitUrl' => array('shortenerName' => 'ptiturl.com', + 'serviceUrl' => 'http://ptiturl.com/?creer=oui&action=Reduire&url=%1$s'), + 'SimpleUrl' => array(array('shortenerName' => 'is.gd', 'serviceUrl' => 'http://is.gd/api.php?longurl=%1$s'), + array('shortenerName' => 'snipr.com', 'serviceUrl' => 'http://snipr.com/site/snip?r=simple&link=%1$s'), + array('shortenerName' => 'metamark.net', 'serviceUrl' => 'http://metamark.net/api/rest/simple?long_url=%1$s'), + array('shortenerName' => 'tinyurl.com', 'serviceUrl' => 'http://tinyurl.com/api-create.php?url=%1$s')), + 'TightUrl' => array('shortenerName' => '2tu.us', 'freeService' => true,'serviceUrl'=>'http://2tu.us/?save=y&url=%1$s'), + 'Geonames' => null, + 'Mapstraction' => null, + 'Linkback' => null, + 'WikiHashtags' => null, + 'OpenID' => null), + ), + 'admin' => + array('panels' => array('design', 'site', 'user', 'paths')), ); diff --git a/lib/grouptagcloudsection.php b/lib/grouptagcloudsection.php index 091cf4845..14ceda085 100644 --- a/lib/grouptagcloudsection.php +++ b/lib/grouptagcloudsection.php @@ -58,11 +58,7 @@ class GroupTagCloudSection extends TagCloudSection function getTags() { - if (common_config('db', 'type') == 'pgsql') { - $weightexpr='sum(exp(-extract(epoch from (now() - notice_tag.created)) / %s))'; - } else { - $weightexpr='sum(exp(-(now() - notice_tag.created) / %s))'; - } + $weightexpr = common_sql_weight('notice_tag.created', common_config('tag', 'dropoff')); $names = $this->group->getAliases(); @@ -99,7 +95,6 @@ class GroupTagCloudSection extends TagCloudSection $tag = Memcached_DataObject::cachedQuery('Notice_tag', sprintf($qry, - common_config('tag', 'dropoff'), $this->group->id, $namestring), 3600); diff --git a/lib/htmloutputter.php b/lib/htmloutputter.php index 2091c6e2c..31660ce95 100644 --- a/lib/htmloutputter.php +++ b/lib/htmloutputter.php @@ -352,7 +352,7 @@ class HTMLOutputter extends XMLOutputter { if(Event::handle('StartScriptElement', array($this,&$src,&$type))) { $url = parse_url($src); - if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment)) + if( empty($url['scheme']) && empty($url['host']) && empty($url['query']) && empty($url['fragment'])) { $src = common_path($src) . '?version=' . STATUSNET_VERSION; } diff --git a/lib/jabber.php b/lib/jabber.php index 01aed8ffa..a821856a8 100644 --- a/lib/jabber.php +++ b/lib/jabber.php @@ -440,7 +440,7 @@ function jabber_public_notice($notice) // XXX: should we send out non-local messages if public,localonly // = false? I think not - if ($public && $notice->is_local) { + if ($public && $notice->is_local == Notice::LOCAL_PUBLIC) { $profile = Profile::staticGet($notice->profile_id); if (!$profile) { diff --git a/lib/jsonsearchresultslist.php b/lib/jsonsearchresultslist.php index 569bfa873..0d72ddf7a 100644 --- a/lib/jsonsearchresultslist.php +++ b/lib/jsonsearchresultslist.php @@ -105,8 +105,14 @@ class JSONSearchResultsList break; } - $item = new ResultItem($this->notice); - array_push($this->results, $item); + $profile = $this->notice->getProfile(); + + // Don't show notices from deleted users + + if (!empty($profile)) { + $item = new ResultItem($this->notice); + array_push($this->results, $item); + } } $time_end = microtime(true); diff --git a/lib/mailhandler.php b/lib/mailhandler.php new file mode 100644 index 000000000..32a8cd9bc --- /dev/null +++ b/lib/mailhandler.php @@ -0,0 +1,275 @@ +<?php +/* + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2008, 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +require_once(INSTALLDIR . '/lib/mail.php'); +require_once(INSTALLDIR . '/lib/mediafile.php'); +require_once('Mail/mimeDecode.php'); + +# FIXME: we use both Mail_mimeDecode and mailparse +# Need to move everything to mailparse + +class MailHandler +{ + function __construct() + { + } + + function handle_message($rawmessage) + { + list($from, $to, $msg, $attachments) = $this->parse_message($rawmessage); + if (!$from || !$to || !$msg) { + $this->error(null, _('Could not parse message.')); + } + common_log(LOG_INFO, "Mail from $from to $to with ".count($attachments) .' attachment(s): ' .substr($msg, 0, 20)); + $user = $this->user_from_header($from); + if (!$user) { + $this->error($from, _('Not a registered user.')); + return false; + } + if (!$this->user_match_to($user, $to)) { + $this->error($from, _('Sorry, that is not your incoming email address.')); + return false; + } + if (!$user->emailpost) { + $this->error($from, _('Sorry, no incoming email allowed.')); + return false; + } + $response = $this->handle_command($user, $from, $msg); + if ($response) { + return true; + } + $msg = $this->cleanup_msg($msg); + $msg = common_shorten_links($msg); + if (Notice::contentTooLong($msg)) { + $this->error($from, sprintf(_('That\'s too long. '. + 'Max notice size is %d chars.'), + Notice::maxContent())); + } + + $mediafiles = array(); + + foreach($attachments as $attachment){ + + $mf = null; + + try { + $mf = MediaFile::fromFileHandle($attachment, $user); + } catch(ClientException $ce) { + $this->error($from, $ce->getMessage()); + } + + $msg .= ' ' . $mf->shortUrl(); + + array_push($mediafiles, $mf); + fclose($attachment); + } + + $err = $this->add_notice($user, $msg, $mediafiles); + + if (is_string($err)) { + $this->error($from, $err); + return false; + } else { + return true; + } + } + + function error($from, $msg) + { + file_put_contents("php://stderr", $msg . "\n"); + exit(1); + } + + function user_from_header($from_hdr) + { + $froms = mailparse_rfc822_parse_addresses($from_hdr); + if (!$froms) { + return null; + } + $from = $froms[0]; + $addr = common_canonical_email($from['address']); + $user = User::staticGet('email', $addr); + if (!$user) { + $user = User::staticGet('smsemail', $addr); + } + return $user; + } + + function user_match_to($user, $to_hdr) + { + $incoming = $user->incomingemail; + $tos = mailparse_rfc822_parse_addresses($to_hdr); + foreach ($tos as $to) { + if (strcasecmp($incoming, $to['address']) == 0) { + return true; + } + } + return false; + } + + function handle_command($user, $from, $msg) + { + $inter = new CommandInterpreter(); + $cmd = $inter->handle_command($user, $msg); + if ($cmd) { + $cmd->execute(new MailChannel($from)); + return true; + } + return false; + } + + function respond($from, $to, $response) + { + + $headers['From'] = $to; + $headers['To'] = $from; + $headers['Subject'] = "Command complete"; + + return mail_send(array($from), $headers, $response); + } + + function log($level, $msg) + { + common_log($level, 'MailDaemon: '.$msg); + } + + function add_notice($user, $msg, $mediafiles) + { + try { + $notice = Notice::saveNew($user->id, $msg, 'mail'); + } catch (Exception $e) { + $this->log(LOG_ERR, $e->getMessage()); + return $e->getMessage(); + } + foreach($mediafiles as $mf){ + $mf->attachToNotice($notice); + } + common_broadcast_notice($notice); + $this->log(LOG_INFO, + 'Added notice ' . $notice->id . ' from user ' . $user->nickname); + return true; + } + + function parse_message($contents) + { + $parsed = Mail_mimeDecode::decode(array('input' => $contents, + 'include_bodies' => true, + 'decode_headers' => true, + 'decode_bodies' => true)); + if (!$parsed) { + return null; + } + + $from = $parsed->headers['from']; + + $to = $parsed->headers['to']; + + $type = $parsed->ctype_primary . '/' . $parsed->ctype_secondary; + + $attachments = array(); + + $this->extract_part($parsed,$msg,$attachments); + + return array($from, $to, $msg, $attachments); + } + + function extract_part($parsed,&$msg,&$attachments){ + if ($parsed->ctype_primary == 'multipart') { + if($parsed->ctype_secondary == 'alternative'){ + $altmsg = $this->extract_msg_from_multipart_alternative_part($parsed); + if(!empty($altmsg)) $msg = $altmsg; + }else{ + foreach($parsed->parts as $part){ + $this->extract_part($part,$msg,$attachments); + } + } + } else if ($parsed->ctype_primary == 'text' + && $parsed->ctype_secondary=='plain') { + $msg = $parsed->body; + if(strtolower($parsed->ctype_parameters['charset']) != "utf-8"){ + $msg = utf8_encode($msg); + } + }else if(!empty($parsed->body)){ + if(common_config('attachments', 'uploads')){ + //only save attachments if uploads are enabled + $attachment = tmpfile(); + fwrite($attachment, $parsed->body); + $attachments[] = $attachment; + } + } + } + + function extract_msg_from_multipart_alternative_part($parsed){ + foreach ($parsed->parts as $part) { + $this->extract_part($part,$msg,$attachments); + } + //we don't want any attachments that are a result of this parsing + return $msg; + } + + function unsupported_type($type) + { + $this->error(null, "Unsupported message type: " . $type); + } + + function cleanup_msg($msg) + { + $lines = explode("\n", $msg); + + $output = ''; + + foreach ($lines as $line) { + // skip quotes + if (preg_match('/^\s*>.*$/', $line)) { + continue; + } + // skip start of quote + if (preg_match('/^\s*On.*wrote:\s*$/', $line)) { + continue; + } + // probably interesting to someone, not us + if (preg_match('/^\s*Sent via/', $line)) { + continue; + } + if (preg_match('/^\s*Sent from my/', $line)) { + continue; + } + + // skip everything after a sig + if (preg_match('/^\s*--+\s*$/', $line) || + preg_match('/^\s*__+\s*$/', $line)) + { + break; + } + // skip everything after Outlook quote + if (preg_match('/^\s*-+\s*Original Message\s*-+\s*$/', $line)) { + break; + } + // skip everything after weird forward + if (preg_match('/^\s*Begin\s+forward/', $line)) { + break; + } + + $output .= ' ' . $line; + } + + preg_replace('/\s+/', ' ', $output); + return trim($output); + } +} diff --git a/lib/noticeform.php b/lib/noticeform.php index 593a1e932..f0b704e87 100644 --- a/lib/noticeform.php +++ b/lib/noticeform.php @@ -110,6 +110,8 @@ class NoticeForm extends Form $this->user = common_current_user(); } + $this->profile = $this->user->getProfile(); + if (common_config('attachments', 'uploads')) { $this->enctype = 'multipart/form-data'; } @@ -198,12 +200,22 @@ class NoticeForm extends Form $this->out->hidden('notice_return-to', $this->action, 'returnto'); } $this->out->hidden('notice_in-reply-to', $this->inreplyto, 'inreplyto'); - $this->out->hidden('notice_data-lat', empty($this->lat) ? null : $this->lat, 'lat'); - $this->out->hidden('notice_data-lon', empty($this->lon) ? null : $this->lon, 'lon'); - $this->out->hidden('notice_data-location_id', empty($this->location_id) ? null : $this->location_id, 'location_id'); - $this->out->hidden('notice_data-location_ns', empty($this->location_ns) ? null : $this->location_ns, 'location_ns'); - Event::handle('StartShowNoticeFormData', array($this)); + if ($this->user->shareLocation()) { + $this->out->hidden('notice_data-lat', empty($this->lat) ? (empty($this->profile->lat) ? null : $this->profile->lat) : $this->lat, 'lat'); + $this->out->hidden('notice_data-lon', empty($this->lon) ? (empty($this->profile->lon) ? null : $this->profile->lon) : $this->lon, 'lon'); + $this->out->hidden('notice_data-location_id', empty($this->location_id) ? (empty($this->profile->location_id) ? null : $this->profile->location_id) : $this->location_id, 'location_id'); + $this->out->hidden('notice_data-location_ns', empty($this->location_ns) ? (empty($this->profile->location_ns) ? null : $this->profile->location_ns) : $this->location_ns, 'location_ns'); + + $this->out->elementStart('div', array('id' => 'notice_data-geo_wrap', + 'title' => common_local_url('geocode'))); + $this->out->checkbox('notice_data-geo', _('Share my location'), true); + $this->out->elementEnd('div'); + $this->out->inlineScript(' var NoticeDataGeoShareDisable_text = "'._('Do not share my location.').'";'. + ' var NoticeDataGeoInfoMinimize_text = "'._('Hide this info').'";'); + } + + Event::handle('EndShowNoticeFormData', array($this)); } } diff --git a/lib/noticelist.php b/lib/noticelist.php index 4c11ceed6..78abf34a7 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -191,6 +191,14 @@ class NoticeListItem extends Widget function show() { + if (empty($this->notice)) { + common_log(LOG_WARNING, "Trying to show missing notice; skipping."); + return; + } else if (empty($this->profile)) { + common_log(LOG_WARNING, "Trying to show missing profile (" . $this->notice->profile_id . "); skipping."); + return; + } + $this->showStart(); if (Event::handle('StartShowNoticeItem', array($this))) { $this->showNotice(); @@ -371,7 +379,7 @@ class NoticeListItem extends Widget function showNoticeLink() { - if($this->notice->is_local){ + if($this->notice->is_local == Notice::LOCAL_PUBLIC || $this->notice->is_local == Notice::LOCAL_NONPUBLIC){ $noticeurl = common_local_url('shownotice', array('notice' => $this->notice->id)); }else{ diff --git a/lib/personaltagcloudsection.php b/lib/personaltagcloudsection.php index 0b29d58ca..091425f92 100644 --- a/lib/personaltagcloudsection.php +++ b/lib/personaltagcloudsection.php @@ -58,13 +58,9 @@ class PersonalTagCloudSection extends TagCloudSection function getTags() { - if (common_config('db', 'type') == 'pgsql') { - $weightexpr='sum(exp(-extract(epoch from (now() - notice_tag.created)) / %s))'; - } else { - $weightexpr='sum(exp(-(now() - notice_tag.created) / %s))'; - } - - $qry = 'SELECT notice_tag.tag, '. + $weightexpr = common_sql_weight('notice_tag.created', common_config('tag', 'dropoff')); + + $qry = 'SELECT notice_tag.tag, '. $weightexpr . ' as weight ' . 'FROM notice_tag JOIN notice ' . 'ON notice_tag.notice_id = notice.id ' . @@ -83,7 +79,6 @@ class PersonalTagCloudSection extends TagCloudSection $tag = Memcached_DataObject::cachedQuery('Notice_tag', sprintf($qry, - common_config('tag', 'dropoff'), $this->user->id), 3600); return $tag; diff --git a/lib/ping.php b/lib/ping.php index 5698c4038..735af9ef1 100644 --- a/lib/ping.php +++ b/lib/ping.php @@ -21,7 +21,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } function ping_broadcast_notice($notice) { - if (!$notice->is_local) { + if ($notice->is_local != Notice::LOCAL_PUBLIC && $notice->is_local != Notice::LOCAL_NONPUBLIC) { return true; } @@ -115,4 +115,4 @@ function ping_notice_tags($notice) { return implode('|', $tags); } return NULL; -}
\ No newline at end of file +} diff --git a/lib/plugin.php b/lib/plugin.php index de7313e59..65ccdafbb 100644 --- a/lib/plugin.php +++ b/lib/plugin.php @@ -104,5 +104,16 @@ class Plugin { $this->log(LOG_DEBUG, $msg); } + + function onPluginVersion(&$versions) + { + $cls = get_class($this); + $name = mb_substr($cls, 0, -6); + + $versions[] = array('name' => $name, + 'version' => _('Unknown')); + + return true; + } } diff --git a/lib/popularnoticesection.php b/lib/popularnoticesection.php index 9fbc9d2dd..fbf9a60ab 100644 --- a/lib/popularnoticesection.php +++ b/lib/popularnoticesection.php @@ -48,17 +48,17 @@ class PopularNoticeSection extends NoticeSection { function getNotices() { + // @fixme there should be a common func for this if (common_config('db', 'type') == 'pgsql') { - $weightexpr='sum(exp(-extract(epoch from (now() - fave.modified)) / %s))'; if (!empty($this->out->tag)) { $tag = pg_escape_string($this->out->tag); } } else { - $weightexpr='sum(exp(-(now() - fave.modified) / %s))'; if (!empty($this->out->tag)) { $tag = mysql_escape_string($this->out->tag); } } + $weightexpr = common_sql_weight('fave.modified', common_config('popular', 'dropoff')); $qry = "SELECT notice.*, $weightexpr as weight "; if(isset($tag)) { $qry .= 'FROM notice_tag, notice JOIN fave ON notice.id = fave.notice_id ' . @@ -78,7 +78,7 @@ class PopularNoticeSection extends NoticeSection $qry .= ' LIMIT ' . $limit . ' OFFSET ' . $offset; $notice = Memcached_DataObject::cachedQuery('Notice', - sprintf($qry, common_config('popular', 'dropoff')), + $qry, 1200); return $notice; } diff --git a/lib/router.php b/lib/router.php index 474e05996..287d3c79f 100644 --- a/lib/router.php +++ b/lib/router.php @@ -100,7 +100,10 @@ class Router 'sandbox', 'unsandbox', 'silence', 'unsilence', 'repeat', - 'deleteuser'); + 'deleteuser', + 'geocode', + 'version', + ); foreach ($main as $a) { $m->connect('main/'.$a, array('action' => $a)); diff --git a/lib/schema.php b/lib/schema.php index a8ba91b87..a7f64ebed 100644 --- a/lib/schema.php +++ b/lib/schema.php @@ -523,6 +523,14 @@ class Schema } else { $sql .= ($cd->nullable) ? "null " : "not null "; } + + if (!empty($cd->auto_increment)) { + $sql .= " auto_increment "; + } + + if (!empty($cd->extra)) { + $sql .= "{$cd->extra} "; + } return $sql; } diff --git a/lib/util.php b/lib/util.php index ed81aeba1..50bd0e2ac 100644 --- a/lib/util.php +++ b/lib/util.php @@ -62,7 +62,7 @@ function common_init_language() // gettext will still select the right language. $language = common_language(); $locale_set = common_init_locale($language); - + setlocale(LC_CTYPE, 'C'); // So we do not have to make people install the gettext locales $path = common_config('site','locale_path'); @@ -908,6 +908,26 @@ function common_sql_date($datetime) return strftime('%Y-%m-%d %H:%M:%S', $datetime); } +/** + * Return an SQL fragment to calculate an age-based weight from a given + * timestamp or datetime column. + * + * @param string $column name of field we're comparing against current time + * @param integer $dropoff divisor for age in seconds before exponentiation + * @return string SQL fragment + */ +function common_sql_weight($column, $dropoff) +{ + if (common_config('db', 'type') == 'pgsql') { + // PostgreSQL doesn't support timestampdiff function. + // @fixme will this use the right time zone? + // @fixme does this handle cross-year subtraction correctly? + return "sum(exp(-extract(epoch from (now() - $column)) / $dropoff))"; + } else { + return "sum(exp(timestampdiff(second, utc_timestamp(), $column) / $dropoff))"; + } +} + function common_redirect($url, $code=307) { static $status = array(301 => "Moved Permanently", @@ -1384,41 +1404,17 @@ function common_session_token() function common_cache_key($extra) { - $base_key = common_config('memcached', 'base'); - - if (empty($base_key)) { - $base_key = common_keyize(common_config('site', 'name')); - } - - return 'statusnet:' . $base_key . ':' . $extra; + return Cache::key($extra); } function common_keyize($str) { - $str = strtolower($str); - $str = preg_replace('/\s/', '_', $str); - return $str; + return Cache::keyize($str); } function common_memcache() { - static $cache = null; - if (!common_config('memcached', 'enabled')) { - return null; - } else { - if (!$cache) { - $cache = new Memcache(); - $servers = common_config('memcached', 'server'); - if (is_array($servers)) { - foreach($servers as $server) { - $cache->addServer($server); - } - } else { - $cache->addServer($servers); - } - } - return $cache; - } + return Cache::instance(); } function common_license_terms($uri) diff --git a/locale/ar/LC_MESSAGES/statusnet.po b/locale/ar/LC_MESSAGES/statusnet.po index 85745b17d..68a1ff2fc 100644 --- a/locale/ar/LC_MESSAGES/statusnet.po +++ b/locale/ar/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:09+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:10:28+0000\n" "Language-Team: Arabic\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ar\n" "X-Message-Group: out-statusnet\n" @@ -121,9 +121,8 @@ msgstr "" #: actions/apiaccountupdateprofile.php:97 #: actions/apiaccountupdateprofilebackgroundimage.php:94 #: actions/apiaccountupdateprofilecolors.php:118 -#, fuzzy msgid "API method not found." -msgstr "لم يوجد رمز التأكيد." +msgstr "لم يتم العثور على وسيلة API." #: actions/apiaccountupdatedeliverydevice.php:85 #: actions/apiaccountupdateprofile.php:89 @@ -159,9 +158,8 @@ msgid "User has no profile." msgstr "ليس للمستخدم مل٠شخصي." #: actions/apiaccountupdateprofile.php:147 -#, fuzzy msgid "Could not save profile." -msgstr "تعذّر ØÙظ المل٠الشخصي." +msgstr "لم يمكن ØÙظ الملÙ." #: actions/apiaccountupdateprofilebackgroundimage.php:108 #: actions/apiaccountupdateprofileimage.php:97 @@ -190,11 +188,11 @@ msgstr "تعذّر تØديث تصميمك." msgid "You cannot block yourself!" msgstr "لا يمكنك منع Ù†Ùسك!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Ùشل منع المستخدم." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Ùشل إلغاء منع المستخدم." @@ -306,31 +304,31 @@ msgid "Could not find target user." msgstr "تعذّر إيجاد المستخدم الهدÙ." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "" #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "ليس اسمًا مستعارًا صØÙŠØًا." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "الصÙØØ© الرئيسية ليست عنونًا صالØًا." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "الاسم الكامل طويل جدا (الأقصى 255 ØرÙًا)" @@ -341,7 +339,7 @@ msgid "Description is too long (max %d chars)." msgstr "" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "" @@ -456,7 +454,7 @@ msgstr "" msgid "Not found" msgstr "لم يوجد" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -585,7 +583,7 @@ msgid "Preview" msgstr "عاين" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "اØØ°Ù" @@ -598,13 +596,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -674,7 +672,7 @@ msgstr "نعم" msgid "Block this user" msgstr "امنع هذا المستخدم" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Ùشل ØÙظ معلومات المنع." @@ -746,7 +744,7 @@ msgstr "" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "تعذّر تØديث المستخدم." @@ -806,7 +804,7 @@ msgstr "أمتأكد من أنك تريد Øذ٠هذا الإشعار؟" msgid "Do not delete this notice" msgstr "لا تØذ٠هذا الإشعار" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "اØذ٠هذا الإشعار" @@ -940,7 +938,7 @@ msgstr "ارجع إلى المبدئي" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1422,7 +1420,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "قائمة بمستخدمي هذه المجموعة." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "إداري" @@ -1509,7 +1507,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "المستخدم ليس ممنوعًا من المجموعة." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "خطأ أثناء منع الØجب." @@ -1678,7 +1676,7 @@ msgstr "رسالة شخصية" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "أرسل" @@ -1774,7 +1772,7 @@ msgstr "اسم المستخدم أو كلمة السر غير صØÙŠØان." msgid "Error setting user. You are probably not authorized." msgstr "خطأ أثناء ضبط المستخدم. لست Ù…ÙصرØًا على الأرجØ." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Ù„Ùج" @@ -1881,7 +1879,7 @@ msgstr "Ø£Ùرسلت الرسالة" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "خطأ أجاكس" @@ -1889,7 +1887,7 @@ msgstr "خطأ أجاكس" msgid "New notice" msgstr "إشعار جديد" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Ø£Ùرسل الإشعار" @@ -2306,69 +2304,77 @@ msgstr "الموقع" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "الوسوم" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "اللغة" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "اللغة المÙضلة" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "المنطقة الزمنية" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "ما المنطقة الزمنية التي تتواجد Ùيها عادة؟" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "لم تÙختر المنطقة الزمنية." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "وسم غير صالØ: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "لم يمكن ØÙظ تÙضيلات الموقع." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "تعذّر ØÙظ المل٠الشخصي." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "تعذّر ØÙظ الوسوم." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ØÙÙظت الإعدادات." @@ -2467,7 +2473,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "سØابة الوسوم" @@ -2603,7 +2609,7 @@ msgstr "عذرا، رمز دعوة غير صالØ." msgid "Registration successful" msgstr "Ù†Ø¬Ø Ø§Ù„ØªØ³Ø¬ÙŠÙ„" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "سجّل" @@ -2767,7 +2773,7 @@ msgstr "لا يمكنك تكرار ملاØظتك الشخصية." msgid "You already repeated that notice." msgstr "أنت كررت هذه الملاØظة بالÙعل." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "مكرر" @@ -3509,7 +3515,7 @@ msgstr "صورة" #: actions/tagother.php:141 msgid "Tag user" -msgstr "" +msgstr "اوسم المستخدم" #: actions/tagother.php:151 msgid "" @@ -3841,16 +3847,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "مشكلة أثناء ØÙظ الإشعار." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "آر تي @%1$s %2$s" @@ -3905,128 +3911,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "صÙØØ© غير Ù…Ùعنونة" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "الرئيسية" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "المل٠الشخصي ومسار الأصدقاء الزمني" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "الØساب" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "اتصل" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "غيّر ضبط الموقع" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "ادعÙ" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "اخرج" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "اخرج من الموقع" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "أنشئ Øسابًا" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Ù„Ùج إلى الموقع" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "مساعدة" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "ساعدني!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "ابØØ«" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "ابØØ« عن أشخاص أو نص" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "إشعار الموقع" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "المشاهدات المØلية" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "إشعار الصÙØØ©" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "عن" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "الأسئلة المكررة" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "الشروط" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "خصوصية" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "المصدر" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "اتصل" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4035,12 +4041,12 @@ msgstr "" "**%%site.name%%** خدمة تدوين مصغر يقدمها لك [%%site.broughtby%%](%%site." "broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4051,31 +4057,31 @@ msgstr "" "المتوÙر تØت [رخصة غنو Ø£Ùيرو العمومية](http://www.fsf.org/licensing/licenses/" "agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "رخصة Ù…Øتوى الموقع" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "الرخصة." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "بعد" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "قبل" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4127,6 +4133,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "وسوم هذا المرÙÙ‚" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "تغيير كلمة السر" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "تغيير كلمة السر" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "نتائج الأمر" @@ -4221,7 +4237,7 @@ msgstr "" #: lib/command.php:427 msgid "Already repeated that notice" -msgstr "كرر بالÙعل هذه الإشعار" +msgstr "كرر بالÙعل هذا الإشعار" #: lib/command.php:435 #, php-format @@ -4589,11 +4605,11 @@ msgstr "نوع مل٠غير معروÙ" #: lib/imagefile.php:217 msgid "MB" -msgstr "" +msgstr "ميجابايت" #: lib/imagefile.php:219 msgid "kB" -msgstr "" +msgstr "كيلوبايت" #: lib/jabber.php:191 #, php-format @@ -4802,7 +4818,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "من" @@ -4866,69 +4882,73 @@ msgstr "أرسل إشعارًا مباشرًا" msgid "To" msgstr "إلى" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "المØار٠المتوÙرة" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "أرسل إشعارًا" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "ما الأخبار يا %sØŸ" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "أرÙÙ‚" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "أرÙÙ‚ ملÙًا" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "Ø´" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "ج" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "ر" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "غ" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "ÙÙŠ" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "ÙÙŠ السياق" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "مكرر بواسطة" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "رÙد على هذا الإشعار" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "رÙد" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "الإشعار مكرر" @@ -5058,9 +5078,8 @@ msgid "Popular" msgstr "مشهورة" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "كرر هذا الإشعار" +msgstr "كرر هذا الإشعار؟" #: lib/repeatform.php:132 msgid "Repeat this notice" @@ -5150,9 +5169,8 @@ msgid "Could not subscribe other to you." msgstr "" #: lib/subs.php:128 -#, fuzzy msgid "Not subscribed!" -msgstr "لست Ù…Ùشتركًا!" +msgstr "غير مشترك!" #: lib/subs.php:133 msgid "Couldn't delete self-subscription." diff --git a/locale/arz/LC_MESSAGES/statusnet.po b/locale/arz/LC_MESSAGES/statusnet.po index 1ad791601..26d2f4ffc 100644 --- a/locale/arz/LC_MESSAGES/statusnet.po +++ b/locale/arz/LC_MESSAGES/statusnet.po @@ -8,12 +8,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:12+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:10:34+0000\n" "Language-Team: Egyptian Spoken Arabic\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: arz\n" "X-Message-Group: out-statusnet\n" @@ -120,9 +120,8 @@ msgstr "" #: actions/apiaccountupdateprofile.php:97 #: actions/apiaccountupdateprofilebackgroundimage.php:94 #: actions/apiaccountupdateprofilecolors.php:118 -#, fuzzy msgid "API method not found." -msgstr "لم يوجد رمز التأكيد." +msgstr "لم يتم العثور على وسيله API." #: actions/apiaccountupdatedeliverydevice.php:85 #: actions/apiaccountupdateprofile.php:89 @@ -158,9 +157,8 @@ msgid "User has no profile." msgstr "ليس للمستخدم مل٠شخصى." #: actions/apiaccountupdateprofile.php:147 -#, fuzzy msgid "Could not save profile." -msgstr "تعذّر ØÙظ المل٠الشخصى." +msgstr "لم يمكن ØÙظ الملÙ." #: actions/apiaccountupdateprofilebackgroundimage.php:108 #: actions/apiaccountupdateprofileimage.php:97 @@ -186,15 +184,14 @@ msgid "Could not update your design." msgstr "تعذّر تØديث تصميمك." #: actions/apiblockcreate.php:105 -#, fuzzy msgid "You cannot block yourself!" -msgstr "لا يمكنك Øذ٠المستخدمين." +msgstr "لا يمكنك منع Ù†Ùسك!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Ùشل منع المستخدم." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Ùشل إلغاء منع المستخدم." @@ -306,31 +303,31 @@ msgid "Could not find target user." msgstr "تعذّر إيجاد المستخدم الهدÙ." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "" #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "ليس اسمًا مستعارًا صØÙŠØًا." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "الصÙØÙ‡ الرئيسيه ليست عنونًا صالØًا." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "الاسم الكامل طويل جدا (الأقصى 255 ØرÙًا)" @@ -341,7 +338,7 @@ msgid "Description is too long (max %d chars)." msgstr "" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "" @@ -431,14 +428,12 @@ msgid "No such notice." msgstr "لا إشعار كهذا." #: actions/apistatusesretweet.php:83 -#, fuzzy msgid "Cannot repeat your own notice." -msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع." +msgstr "لا يمكنك تكرار ملØوظتك الخاصه." #: actions/apistatusesretweet.php:91 -#, fuzzy msgid "Already repeated that notice." -msgstr "اØذ٠هذا الإشعار" +msgstr "كرر بالÙعل هذه الملاØظه." #: actions/apistatusesshow.php:138 msgid "Status deleted." @@ -458,7 +453,7 @@ msgstr "" msgid "Not found" msgstr "لم يوجد" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -515,14 +510,14 @@ msgid "Repeated by %s" msgstr "" #: actions/apitimelineretweetedtome.php:111 -#, fuzzy, php-format +#, php-format msgid "Repeated to %s" -msgstr "الردود على %s" +msgstr "كرر إلى %s" #: actions/apitimelineretweetsofme.php:112 -#, fuzzy, php-format +#, php-format msgid "Repeats of %s" -msgstr "الردود على %s" +msgstr "تكرارات %s" #: actions/apitimelinetag.php:102 actions/tag.php:66 #, php-format @@ -587,7 +582,7 @@ msgid "Preview" msgstr "عاين" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "اØØ°Ù" @@ -600,13 +595,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -676,7 +671,7 @@ msgstr "نعم" msgid "Block this user" msgstr "امنع هذا المستخدم" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Ùشل ØÙظ معلومات المنع." @@ -748,7 +743,7 @@ msgstr "" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "تعذّر تØديث المستخدم." @@ -808,7 +803,7 @@ msgstr "أمتأكد من أنك تريد Øذ٠هذا الإشعار؟" msgid "Do not delete this notice" msgstr "لا تØذ٠هذا الإشعار" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "اØذ٠هذا الإشعار" @@ -942,7 +937,7 @@ msgstr "ارجع إلى المبدئي" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1235,29 +1230,25 @@ msgid "Featured users, page %d" msgstr "مستخدمون مختارون، صÙØÙ‡ %d" #: actions/featured.php:99 -#, fuzzy, php-format +#, php-format msgid "A selection of some great users on %s" -msgstr "قسم للمستخدمين المتميزين على %s" +msgstr "اختيار لبعض المستخدمين المتميزين على %s" #: actions/file.php:34 -#, fuzzy msgid "No notice ID." -msgstr "لا إشعار" +msgstr "لا رقم ملاØظه." #: actions/file.php:38 -#, fuzzy msgid "No notice." -msgstr "لا إشعار" +msgstr "لا ملاØظه." #: actions/file.php:42 -#, fuzzy msgid "No attachments." -msgstr "لا مرÙقات" +msgstr "لا مرÙقات." #: actions/file.php:51 -#, fuzzy msgid "No uploaded attachments." -msgstr "لا مرÙقات مرÙوعة" +msgstr "لا مرÙقات مرÙوعه." #: actions/finishremotesubscribe.php:69 msgid "Not expecting this response!" @@ -1428,7 +1419,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "قائمه بمستخدمى هذه المجموعه." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "إداري" @@ -1515,7 +1506,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "المستخدم ليس ممنوعًا من المجموعه." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "خطأ أثناء منع الØجب." @@ -1684,7 +1675,7 @@ msgstr "رساله شخصية" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "أرسل" @@ -1780,7 +1771,7 @@ msgstr "اسم المستخدم أو كلمه السر غير صØÙŠØان." msgid "Error setting user. You are probably not authorized." msgstr "خطأ أثناء ضبط المستخدم. لست Ù…ÙصرØًا على الأرجØ." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Ù„Ùج" @@ -1887,7 +1878,7 @@ msgstr "Ø£Ùرسلت الرسالة" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "خطأ أجاكس" @@ -1895,7 +1886,7 @@ msgstr "خطأ أجاكس" msgid "New notice" msgstr "إشعار جديد" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Ø£Ùرسل الإشعار" @@ -2312,69 +2303,77 @@ msgstr "الموقع" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "الوسوم" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "اللغة" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "اللغه المÙضلة" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "المنطقه الزمنية" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "ما المنطقه الزمنيه التى تتواجد Ùيها عادة؟" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "لم تÙختر المنطقه الزمنيه." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "وسم غير صالØ: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "لم يمكن ØÙظ تÙضيلات الموقع." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "تعذّر ØÙظ المل٠الشخصى." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "تعذّر ØÙظ الوسوم." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ØÙÙظت الإعدادات." @@ -2473,7 +2472,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "سØابه الوسوم" @@ -2609,7 +2608,7 @@ msgstr "عذرا، رمز دعوه غير صالØ." msgid "Registration successful" msgstr "Ù†Ø¬Ø Ø§Ù„ØªØ³Ø¬ÙŠÙ„" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "سجّل" @@ -2762,29 +2761,24 @@ msgid "Only logged-in users can repeat notices." msgstr "" #: actions/repeat.php:64 actions/repeat.php:71 -#, fuzzy msgid "No notice specified." -msgstr "لا مل٠شخصى Ù…ÙØدّد." +msgstr "لا ملاØظه Ù…Øدده." #: actions/repeat.php:76 -#, fuzzy msgid "You can't repeat your own notice." -msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع." +msgstr "لا يمكنك تكرار ملاØظتك الشخصيه." #: actions/repeat.php:90 -#, fuzzy msgid "You already repeated that notice." -msgstr "لقد منعت مسبقا هذا المستخدم." +msgstr "أنت كررت هذه الملاØظه بالÙعل." -#: actions/repeat.php:114 lib/noticelist.php:621 -#, fuzzy +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" -msgstr "أنشئ" +msgstr "مكرر" #: actions/repeat.php:119 -#, fuzzy msgid "Repeated!" -msgstr "أنشئ" +msgstr "مكرر!" #: actions/replies.php:125 actions/repliesrss.php:68 #: lib/personalgroupnav.php:105 @@ -3089,9 +3083,9 @@ msgid "" msgstr "" #: actions/showstream.php:313 -#, fuzzy, php-format +#, php-format msgid "Repeat of %s" -msgstr "الردود على %s" +msgstr "تكرارات %s" #: actions/silence.php:65 actions/unsilence.php:65 msgid "You cannot silence users on this site." @@ -3219,9 +3213,8 @@ msgid "Prohibit anonymous users (not logged in) from viewing site?" msgstr "أأمنع المستخدمين المجهولين (غير الوالجين) من عرض الموقع؟" #: actions/siteadminpanel.php:327 -#, fuzzy msgid "Invite only" -msgstr "ادعÙ" +msgstr "بالدعوه Ùقط" #: actions/siteadminpanel.php:329 msgid "Make registration invitation only." @@ -3503,9 +3496,8 @@ msgid "Notice feed for tag %s (Atom)" msgstr "" #: actions/tagother.php:39 -#, fuzzy msgid "No ID argument." -msgstr "لا Ù…Ùدخل هويه." +msgstr "لا مدخل هويه." #: actions/tagother.php:65 #, php-format @@ -3522,7 +3514,7 @@ msgstr "صورة" #: actions/tagother.php:141 msgid "Tag user" -msgstr "" +msgstr "اوسم المستخدم" #: actions/tagother.php:151 msgid "" @@ -3556,9 +3548,8 @@ msgid "You haven't blocked that user." msgstr "لم تمنع هذا المستخدم." #: actions/unsandbox.php:72 -#, fuzzy msgid "User is not sandboxed." -msgstr "ليس للمستخدم إشعار أخير" +msgstr "المستخدم ليس ÙÙ‰ صندوق الرمل." #: actions/unsilence.php:72 msgid "User is not silenced." @@ -3762,9 +3753,8 @@ msgid "Wrong image type for avatar URL ‘%s’." msgstr "" #: actions/userbyid.php:70 -#, fuzzy msgid "No ID." -msgstr "لا هوية" +msgstr "لا هويه." #: actions/userdesignsettings.php:76 lib/designsettings.php:65 msgid "Profile design" @@ -3856,19 +3846,19 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "مشكله أثناء ØÙظ الإشعار." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 -#, fuzzy, php-format +#: classes/Notice.php:1361 +#, php-format msgid "RT @%1$s %2$s" -msgstr "%1$s (%2$s)" +msgstr "آر تى @%1$s %2$s" #: classes/User.php:368 #, php-format @@ -3920,128 +3910,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "صÙØÙ‡ غير Ù…Ùعنونة" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "الرئيسية" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "المل٠الشخصى ومسار الأصدقاء الزمني" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "الØساب" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "اتصل" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "غيّر ضبط الموقع" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "ادعÙ" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "اخرج" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "اخرج من الموقع" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "أنشئ Øسابًا" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Ù„Ùج إلى الموقع" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "مساعدة" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "ساعدني!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "ابØØ«" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "ابØØ« عن أشخاص أو نص" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "إشعار الموقع" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "المشاهدات المØلية" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "إشعار الصÙØØ©" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "عن" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "الأسئله المكررة" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "الشروط" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "خصوصية" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "المصدر" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "اتصل" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4050,12 +4040,12 @@ msgstr "" "**%%site.name%%** خدمه تدوين مصغر يقدمها لك [%%site.broughtby%%](%%site." "broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4066,31 +4056,31 @@ msgstr "" "المتوÙر تØت [رخصه غنو Ø£Ùيرو العمومية](http://www.fsf.org/licensing/licenses/" "agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "رخصه Ù…Øتوى الموقع" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "الرخصه." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "بعد" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "قبل" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4142,6 +4132,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "وسوم هذا المرÙÙ‚" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "تغيير كلمه السر" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "تغيير كلمه السر" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "نتائج الأمر" @@ -4235,19 +4235,17 @@ msgid "Cannot repeat your own notice" msgstr "" #: lib/command.php:427 -#, fuzzy msgid "Already repeated that notice" -msgstr "اØذ٠هذا الإشعار" +msgstr "كرر بالÙعل هذا الإشعار" #: lib/command.php:435 -#, fuzzy, php-format +#, php-format msgid "Notice from %s repeated" -msgstr "Ø£Ùرسل الإشعار" +msgstr "الإشعار من %s مكرر" #: lib/command.php:437 -#, fuzzy msgid "Error repeating notice." -msgstr "خطأ أثناء ØÙظ الإشعار." +msgstr "خطأ تكرار الإشعار." #: lib/command.php:491 #, php-format @@ -4308,7 +4306,7 @@ msgstr "" #: lib/command.php:664 #, php-format msgid "Could not create login token for %s" -msgstr "" +msgstr "لم يمكن إنشاء توكن الولوج Ù„%s" #: lib/command.php:669 #, php-format @@ -4606,11 +4604,11 @@ msgstr "نوع مل٠غير معروÙ" #: lib/imagefile.php:217 msgid "MB" -msgstr "" +msgstr "ميجابايت" #: lib/imagefile.php:219 msgid "kB" -msgstr "" +msgstr "كيلوبايت" #: lib/jabber.php:191 #, php-format @@ -4819,7 +4817,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "من" @@ -4883,73 +4881,75 @@ msgstr "أرسل إشعارًا مباشرًا" msgid "To" msgstr "إلى" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "المØار٠المتوÙرة" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "أرسل إشعارًا" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "ما الأخبار يا %sØŸ" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "أرÙÙ‚" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "أرÙÙ‚ ملÙًا" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "Ø´" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "ج" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "ر" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "غ" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "ÙÙŠ" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "ÙÙ‰ السياق" -#: lib/noticelist.php:548 -#, fuzzy +#: lib/noticelist.php:556 msgid "Repeated by" -msgstr "أنشئ" +msgstr "مكرر بواسطة" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "رÙد على هذا الإشعار" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "رÙد" -#: lib/noticelist.php:620 -#, fuzzy +#: lib/noticelist.php:628 msgid "Notice repeated" -msgstr "ØÙذ٠الإشعار." +msgstr "الإشعار مكرر" #: lib/nudgeform.php:116 msgid "Nudge this user" @@ -5049,9 +5049,8 @@ msgid "All groups" msgstr "كل المجموعات" #: lib/profileformaction.php:123 -#, fuzzy msgid "No return-to arguments." -msgstr "لا Ù…Ùدخل هويه." +msgstr "لا مدخلات رجوع إلى." #: lib/profileformaction.php:137 msgid "Unimplemented method." @@ -5078,23 +5077,20 @@ msgid "Popular" msgstr "مشهورة" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "رÙد على هذا الإشعار" +msgstr "كرر هذا الإشعار؟" #: lib/repeatform.php:132 -#, fuzzy msgid "Repeat this notice" -msgstr "رÙد على هذا الإشعار" +msgstr "كرر هذا الإشعار" #: lib/sandboxform.php:67 msgid "Sandbox" msgstr "" #: lib/sandboxform.php:78 -#, fuzzy msgid "Sandbox this user" -msgstr "ألغ٠منع هذا المستخدم" +msgstr "أض٠هذا المستخدم إلى صندوق الرمل" #: lib/searchaction.php:120 msgid "Search site" @@ -5172,14 +5168,12 @@ msgid "Could not subscribe other to you." msgstr "" #: lib/subs.php:128 -#, fuzzy msgid "Not subscribed!" -msgstr "لست Ù…Ùشتركًا!" +msgstr "غير مشترك!" #: lib/subs.php:133 -#, fuzzy msgid "Couldn't delete self-subscription." -msgstr "تعذّر Øذ٠الاشتراك." +msgstr "لم يمكن Øذ٠اشتراك ذاتى." #: lib/subs.php:146 msgid "Couldn't delete subscription." @@ -5212,9 +5206,8 @@ msgid "Unsandbox" msgstr "" #: lib/unsandboxform.php:80 -#, fuzzy msgid "Unsandbox this user" -msgstr "ألغ٠منع هذا المستخدم" +msgstr "أزل هذا المستخدم من صندوق الرمل" #: lib/unsilenceform.php:67 msgid "Unsilence" diff --git a/locale/bg/LC_MESSAGES/statusnet.po b/locale/bg/LC_MESSAGES/statusnet.po index aed553f9e..cf881f17b 100644 --- a/locale/bg/LC_MESSAGES/statusnet.po +++ b/locale/bg/LC_MESSAGES/statusnet.po @@ -1,5 +1,6 @@ # Translation of StatusNet to Bulgarian # +# Author@translatewiki.net: DCLXVI # Author@translatewiki.net: Turin # -- # This file is distributed under the same license as the StatusNet package. @@ -8,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:15+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:10:40+0000\n" "Language-Team: Bulgarian\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: bg\n" "X-Message-Group: out-statusnet\n" @@ -188,11 +189,11 @@ msgstr "Грешка при обновÑване на потребителÑ." msgid "You cannot block yourself!" msgstr "Ðе можете да блокирате Ñебе Ñи!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Грешка при блокиране на потребителÑ." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Грешка при разблокиране на потребителÑ." @@ -303,12 +304,11 @@ msgid "Could not determine source user." msgstr "Грешка при изтеглÑне на Ð¾Ð±Ñ‰Ð¸Ñ Ð¿Ð¾Ñ‚Ð¾Ðº" #: actions/apifriendshipsshow.php:143 -#, fuzzy msgid "Could not find target user." -msgstr "Ðе Ñа открити бележки." +msgstr "ЦелевиÑÑ‚ потребител не беше открит." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -316,25 +316,25 @@ msgstr "" "между Ñ‚ÑÑ…." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Опитайте друг пÑевдоним, този вече е зает." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Ðеправилен пÑевдоним." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "ÐдреÑÑŠÑ‚ на личната Ñтраница не е правилен URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Пълното име е твърде дълго (макÑ. 255 знака)" @@ -345,7 +345,7 @@ msgid "Description is too long (max %d chars)." msgstr "ОпиÑанието е твърде дълго (до %d Ñимвола)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Името на меÑтоположението е твърде дълго (макÑ. 255 знака)." @@ -460,7 +460,7 @@ msgstr "Твърде дълга бележка. ТрÑбва да е най-мн msgid "Not found" msgstr "Ðе е открито." -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -591,7 +591,7 @@ msgid "Preview" msgstr "Преглед" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Изтриване" @@ -604,13 +604,13 @@ msgid "Crop" msgstr "ИзрÑзване" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -680,7 +680,7 @@ msgstr "Да" msgid "Block this user" msgstr "Блокиране на потребителÑ" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Грешка при запиÑване данните за блокирането." @@ -754,7 +754,7 @@ msgstr "Този Ð°Ð´Ñ€ÐµÑ Ðµ вече потвърден." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Грешка при обновÑване на потребителÑ." @@ -814,7 +814,7 @@ msgstr "ÐаиÑтина ли иÑкате да изтриете тази бел msgid "Do not delete this notice" msgstr "Да не Ñе изтрива бележката" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Изтриване на бележката" @@ -954,7 +954,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1268,9 +1268,8 @@ msgid "No notice." msgstr "ЛипÑва бележка." #: actions/file.php:42 -#, fuzzy msgid "No attachments." -msgstr "ÐÑма такъв документ." +msgstr "ÐÑма прикачени файлове." #: actions/file.php:51 #, fuzzy @@ -1350,14 +1349,12 @@ msgid "Only an admin can block group members." msgstr "Само админиÑтратор може да блокира членове от групата." #: actions/groupblock.php:95 -#, fuzzy msgid "User is already blocked from group." -msgstr "ПотребителÑÑ‚ ви е блокирал." +msgstr "ПотребителÑÑ‚ вече е блокиран за групата." #: actions/groupblock.php:100 -#, fuzzy msgid "User is not a member of group." -msgstr "Ðе членувате в тази група." +msgstr "ПотребителÑÑ‚ не членува в групата." #: actions/groupblock.php:136 actions/groupmembers.php:314 #, fuzzy @@ -1460,7 +1457,7 @@ msgstr "Членове на групата %s, Ñтраница %d" msgid "A list of the users in this group." msgstr "СпиÑък Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ð¸Ñ‚Ðµ в тази група." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "ÐаÑтройки" @@ -1551,7 +1548,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "ПотребителÑÑ‚ ви е блокирал." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "Грешка при запазване на потребител." @@ -1734,7 +1731,7 @@ msgstr "Лично Ñъобщение" msgid "Optionally add a personal message to the invitation." msgstr "Може да добавите и лично Ñъобщение към поканата." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Прати" @@ -1859,7 +1856,7 @@ msgstr "Грешно име или парола." msgid "Error setting user. You are probably not authorized." msgstr "Забранено." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Вход" @@ -1972,7 +1969,7 @@ msgstr "Съобщението е изпратено" msgid "Direct message to %s sent" msgstr "ПрÑкото Ñъобщение до %s е изпратено." -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Грешка в Ajax" @@ -1980,7 +1977,7 @@ msgstr "Грешка в Ajax" msgid "New notice" msgstr "Ðова бележка" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Бележката е публикувана" @@ -2054,7 +2051,7 @@ msgstr "вид Ñъдържание " #: actions/oembed.php:160 msgid "Only " -msgstr "" +msgstr "Само " #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1031 #: lib/api.php:1059 lib/api.php:1169 @@ -2403,71 +2400,80 @@ msgstr "МеÑтоположение" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Къде Ñе намирате (град, община, държава и Ñ‚.н.)" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Етикети" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Език" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Предпочитан език" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "ЧаÑови поÑÑ" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Ð’ кой чаÑови поÑÑ Ñте обикновено?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Ðвтоматично абониране за вÑеки, който Ñе абонира за мен (подходÑщо за " "ботове)." -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "БиографиÑта е твърде дълга (до %d Ñимвола)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Ðе е избран чаÑови поÑÑ" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Името на езика е твърде дълго (може да е до 50 знака)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Ðеправилен етикет: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Грешка при запазване етикетите." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Грешка при запазване на профила." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Грешка при запазване етикетите." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ÐаÑтройките Ñа запазени." @@ -2561,7 +2567,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2700,7 +2706,7 @@ msgstr "Грешка в кода за потвърждение." msgid "Registration successful" msgstr "ЗапиÑването е уÑпешно." -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "РегиÑтриране" @@ -2889,7 +2895,7 @@ msgstr "Ðе можете да повтарÑте ÑобÑтвена бележРmsgid "You already repeated that notice." msgstr "Вече Ñте повторили тази бележка." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Повторено" @@ -4002,16 +4008,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Забранено ви е да публикувате бележки в този Ñайт." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Проблем при запиÑване на бележката." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Грешка в базата от данни — отговор при вмъкването: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4068,132 +4074,132 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Ðеозаглавена Ñтраница" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Ðачало" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Сметка" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "ПромÑна на поща, аватар, парола, профил" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Свързване" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Свързване към уÑлуги" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "ПромÑна наÑтройките на Ñайта" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Покани" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Поканете приÑтели и колеги да Ñе приÑъединÑÑ‚ към Ð²Ð°Ñ Ð² %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Изход" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Излизане от Ñайта" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Създаване на нова Ñметка" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Влизане в Ñайта" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Помощ" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "Помощ" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "ТърÑене" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "ТърÑене за хора или бележки" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "Ðова бележка" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "Ðова бележка" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "Ðбонаменти" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "ОтноÑно" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "ВъпроÑи" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "УÑловиÑ" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "ПоверителноÑÑ‚" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Изходен код" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Контакт" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Табелка" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Лиценз на програмата StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4202,12 +4208,12 @@ msgstr "" "**%%site.name%%** е уÑлуга за микроблогване, предоÑтавена ви от [%%site." "broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** е уÑлуга за микроблогване. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4218,31 +4224,31 @@ msgstr "" "доÑтъпна под [GNU Affero General Public License](http://www.fsf.org/" "licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Лиценз на Ñъдържанието" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Ð’Ñички " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "лиценз." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Страниране" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "След" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Преди" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Имаше проблем ÑÑŠÑ ÑеÑиÑта ви в Ñайта." @@ -4297,6 +4303,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Паролата е запиÑана." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Паролата е запиÑана." + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Резултат от командата" @@ -4981,7 +4997,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "от" @@ -5045,69 +5061,73 @@ msgstr "Изпращане на прÑко Ñъобщеие" msgid "To" msgstr "До" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Ðалични знаци" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Изпращане на бележка" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Какво Ñтава, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "ПрикрепÑне" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "ПрикрепÑне на файл" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "С" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "Ю" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "И" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "З" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "в контекÑÑ‚" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Повторено от" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "ОтговарÑне на тази бележка" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Отговор" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Бележката е повторена." diff --git a/locale/ca/LC_MESSAGES/statusnet.po b/locale/ca/LC_MESSAGES/statusnet.po index cf1494f2d..7022f4fad 100644 --- a/locale/ca/LC_MESSAGES/statusnet.po +++ b/locale/ca/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:19+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:10:44+0000\n" "Language-Team: Catalan\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ca\n" "X-Message-Group: out-statusnet\n" @@ -195,11 +195,11 @@ msgstr "No s'ha pogut actualitzar l'usuari." msgid "You cannot block yourself!" msgstr "No podeu suprimir els usuaris." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Ha fallat el bloqueig d'usuari." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Ha fallat el desbloqueig d'usuari." @@ -316,7 +316,7 @@ msgid "Could not find target user." msgstr "No es pot trobar cap estatus." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -324,25 +324,25 @@ msgstr "" "espais." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Aquest sobrenom ja existeix. Prova un altre. " #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Sobrenom no và lid." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "La pà gina personal no és un URL và lid." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "El teu nom és massa llarg (mà x. 255 carà cters)." @@ -353,7 +353,7 @@ msgid "Description is too long (max %d chars)." msgstr "La descripció és massa llarga (mà x. %d carà cters)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "La ubicació és massa llarga (mà x. 255 carà cters)." @@ -470,7 +470,7 @@ msgstr "Massa llarg. La longitud mà xima és de %d carà cters." msgid "Not found" msgstr "No s'ha trobat" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -600,7 +600,7 @@ msgid "Preview" msgstr "Vista prèvia" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Suprimeix" @@ -613,13 +613,13 @@ msgid "Crop" msgstr "Retalla" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -693,7 +693,7 @@ msgstr "SÃ" msgid "Block this user" msgstr "Bloquejar aquest usuari" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Error al guardar la informació del block." @@ -767,7 +767,7 @@ msgstr "Aquesta adreça ja ha estat confirmada." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "No s'ha pogut actualitzar l'usuari." @@ -831,7 +831,7 @@ msgstr "N'està s segur que vols eliminar aquesta notificació?" msgid "Do not delete this notice" msgstr "No es pot esborrar la notificació." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Eliminar aquesta nota" @@ -969,7 +969,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1471,7 +1471,7 @@ msgstr "%s membre/s en el grup, pà gina %d" msgid "A list of the users in this group." msgstr "La llista dels usuaris d'aquest grup." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Admin" @@ -1560,7 +1560,7 @@ msgstr "Només un administrador pot desblocar els membres del grup." msgid "User is not blocked from group." msgstr "L'usuari no està blocat del grup." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "S'ha produït un error en suprimir el bloc." @@ -1750,7 +1750,7 @@ msgstr "Missatge personal" msgid "Optionally add a personal message to the invitation." msgstr "Opcionalment pots afegir un missatge a la invitació." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Envia" @@ -1874,7 +1874,7 @@ msgstr "Nom d'usuari o contrasenya incorrectes." msgid "Error setting user. You are probably not authorized." msgstr "No autoritzat." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Inici de sessió" @@ -1988,7 +1988,7 @@ msgstr "S'ha enviat el missatge" msgid "Direct message to %s sent" msgstr "Missatge directe per a %s enviat" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax Error" @@ -1996,7 +1996,7 @@ msgstr "Ajax Error" msgid "New notice" msgstr "Nou avÃs" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Notificació publicada" @@ -2428,73 +2428,82 @@ msgstr "Ubicació" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "On ets, per exemple \"Ciutat, Estat (o Regió), PaÃs\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Etiquetes" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Etiquetes per a tu mateix (lletres, números, -, ., i _), per comes o separat " "por espais" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Idioma" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Preferència d'idioma" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Franja horà ria" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Quina franja horà ria seria normal ser?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Automà ticament subscriure's a qualsevol que ho estigui a tu mateix (ideal " "per no-humans)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "La biografia és massa llarga (mà x. %d carà cters)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Franja horà ria no seleccionada." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "L'idioma és massa llarg (mà x 50 carà cters)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Etiqueta no và lida: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "No es pot actualitzar l'usuari per autosubscriure." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "No s'han pogut guardar les etiquetes." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "No s'ha pogut guardar el perfil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "No s'han pogut guardar les etiquetes." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Configuració guardada." @@ -2591,7 +2600,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Núvol d'etiquetes" @@ -2731,7 +2740,7 @@ msgstr "El codi d'invitació no és và lid." msgid "Registration successful" msgstr "Registre satisfactori" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registre" @@ -2928,7 +2937,7 @@ msgstr "No pots registrar-te si no està s d'acord amb la llicència." msgid "You already repeated that notice." msgstr "Ja heu blocat l'usuari." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Repetit" @@ -4052,16 +4061,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Ha estat bandejat de publicar notificacions en aquest lloc." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problema en guardar l'avÃs." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Error de BD en inserir resposta: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4117,129 +4126,129 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Pà gina sense titol" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Navegació primà ria del lloc" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Inici" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Perfil personal i lÃnia temporal dels amics" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Compte" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Canviar correu electrònic, avatar, contrasenya, perfil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Connexió" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "No s'ha pogut redirigir al servidor: %s" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Canvia la configuració del lloc" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Convida" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Convidar amics i companys perquè participin a %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Finalitza la sessió" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Finalitza la sessió del lloc" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Crea un compte" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Inicia una sessió al lloc" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Ajuda" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Ajuda'm" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Cerca" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Cerca gent o text" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "AvÃs del lloc" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Vistes locals" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Notificació pà gina" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Navegació del lloc secundà ria" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Quant a" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "Preguntes més freqüents" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privadesa" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Font" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contacte" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "InsÃgnia" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Llicència del programari StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4248,12 +4257,12 @@ msgstr "" "**%%site.name%%** és un servei de microblogging de [%%site.broughtby%%**](%%" "site.broughtbyurl%%)." -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** és un servei de microblogging." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4264,32 +4273,32 @@ msgstr "" "%s, disponible sota la [GNU Affero General Public License](http://www.fsf." "org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "Llicència del programari StatusNet" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Tot " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "llicència." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginació" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Posteriors" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Anteriors" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Ha ocorregut algun problema amb la teva sessió." @@ -4345,6 +4354,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "Etiquetes de l'adjunció" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Contrasenya canviada." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Contrasenya canviada." + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Resultats de les comandes" @@ -5031,7 +5050,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "de" @@ -5095,72 +5114,76 @@ msgstr "Enviar notificació directa" msgid "To" msgstr "A" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Carà cters disponibles" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Enviar notificació" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Què tal, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "Adjunta" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Adjunta un fitxer" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "No" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "Cap contingut!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "S'ha creat" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "respondre a aquesta nota" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Respon" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Notificació publicada" diff --git a/locale/cs/LC_MESSAGES/statusnet.po b/locale/cs/LC_MESSAGES/statusnet.po index a8516db7e..73ffd3265 100644 --- a/locale/cs/LC_MESSAGES/statusnet.po +++ b/locale/cs/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:25+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:10:48+0000\n" "Language-Team: Czech\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: cs\n" "X-Message-Group: out-statusnet\n" @@ -194,11 +194,11 @@ msgstr "Nelze aktualizovat uživatele" msgid "You cannot block yourself!" msgstr "Nelze aktualizovat uživatele" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -313,31 +313,31 @@ msgid "Could not find target user." msgstr "Nelze aktualizovat uživatele" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "PÅ™ezdÃvka může obsahovat pouze malá pÃsmena a ÄÃsla bez mezer" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "PÅ™ezdÃvku již nÄ›kdo použÃvá. Zkuste jinou" #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Nenà platnou pÅ™ezdÃvkou." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Stránka nenà platnou URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Jméno je moc dlouhé (maximálnà délka je 255 znaků)" @@ -348,7 +348,7 @@ msgid "Description is too long (max %d chars)." msgstr "Text je pÅ™ÃliÅ¡ dlouhý (maximálnà délka je 140 zanků)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "UmÃstÄ›nà pÅ™ÃliÅ¡ dlouhé (maximálnÄ› 255 znaků)" @@ -469,7 +469,7 @@ msgstr "Je to pÅ™ÃliÅ¡ dlouhé. Maximálnà sdÄ›lenà délka je 140 znaků" msgid "Not found" msgstr "" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -602,7 +602,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Odstranit" @@ -615,13 +615,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -694,7 +694,7 @@ msgstr "Ano" msgid "Block this user" msgstr "Zablokovat tohoto uživatele" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -768,7 +768,7 @@ msgstr "Adresa již byla potvrzena" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Nelze aktualizovat uživatele" @@ -830,7 +830,7 @@ msgstr "" msgid "Do not delete this notice" msgstr "Žádné takové oznámenÃ." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Odstranit toto oznámenÃ" @@ -972,7 +972,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1477,7 +1477,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1570,7 +1570,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "Uživatel nemá profil." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "Chyba pÅ™i ukládanà uživatele" @@ -1749,7 +1749,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Odeslat" @@ -1849,7 +1849,7 @@ msgstr "Neplatné jméno nebo heslo" msgid "Error setting user. You are probably not authorized." msgstr "Neautorizován." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "PÅ™ihlásit" @@ -1959,7 +1959,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1967,7 +1967,7 @@ msgstr "" msgid "New notice" msgstr "Nové sdÄ›lenÃ" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 #, fuzzy msgid "Notice posted" msgstr "SdÄ›lenÃ" @@ -2406,70 +2406,79 @@ msgstr "UmÃstÄ›nÃ" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "MÃsto. MÄ›sto, stát." -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Jazyk" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "Text je pÅ™ÃliÅ¡ dlouhý (maximálnà délka je 140 zanků)" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "Neplatná adresa '%s'" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Nelze uložit profil" + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Nelze uložit profil" -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "Nelze uložit profil" -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Nastavenà uloženo" @@ -2566,7 +2575,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2705,7 +2714,7 @@ msgstr "Chyba v ověřovacÃm kódu" msgid "Registration successful" msgstr "Registrace úspěšná" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registrovat" @@ -2881,7 +2890,7 @@ msgstr "Nemůžete se registrovat, pokud nesouhlasÃte s licencÃ." msgid "You already repeated that notice." msgstr "Již jste pÅ™ihlášen" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "VytvoÅ™it" @@ -4006,16 +4015,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problém pÅ™i ukládánà sdÄ›lenÃ" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Chyba v DB pÅ™i vkládánà odpovÄ›di: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4074,135 +4083,135 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Domů" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "O nás" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "PÅ™ipojit" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Nelze pÅ™esmÄ›rovat na server: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "OdbÄ›ry" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Odhlásit" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "VytvoÅ™it nový úÄet" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "NápovÄ›da" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Pomoci mi!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Hledat" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "Nové sdÄ›lenÃ" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "Nové sdÄ›lenÃ" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "OdbÄ›ry" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "O nás" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "SoukromÃ" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Zdroj" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Kontakt" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4211,12 +4220,12 @@ msgstr "" "**%%site.name%%** je služba microblogů, kterou pro vás poskytuje [%%site." "broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** je služba mikroblogů." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4227,34 +4236,34 @@ msgstr "" "dostupná pod [GNU Affero General Public License](http://www.fsf.org/" "licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "Nové sdÄ›lenÃ" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 #, fuzzy msgid "After" msgstr "« NovÄ›jÅ¡Ã" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "Staršà »" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4309,6 +4318,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Heslo uloženo" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Heslo uloženo" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4997,7 +5016,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr " od " @@ -5063,74 +5082,78 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "6 a vÃce znaků" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "Nové sdÄ›lenÃ" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Co se dÄ›je %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "Žádný obsah!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "VytvoÅ™it" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 #, fuzzy msgid "Reply" msgstr "odpovÄ›Ä" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "SdÄ›lenÃ" diff --git a/locale/de/LC_MESSAGES/statusnet.po b/locale/de/LC_MESSAGES/statusnet.po index e76dd9bde..80498e5d1 100644 --- a/locale/de/LC_MESSAGES/statusnet.po +++ b/locale/de/LC_MESSAGES/statusnet.po @@ -11,12 +11,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:29+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:10:52+0000\n" "Language-Team: German\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: de\n" "X-Message-Group: out-statusnet\n" @@ -196,15 +196,14 @@ msgid "Could not update your design." msgstr "Konnte Benutzerdesign nicht aktualisieren." #: actions/apiblockcreate.php:105 -#, fuzzy msgid "You cannot block yourself!" -msgstr "Du kannst dich nicht selbst entfolgen!" +msgstr "Du kannst dich nicht selbst sperren!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Blockieren des Benutzers fehlgeschlagen." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Freigeben des Benutzers fehlgeschlagen." @@ -319,7 +318,7 @@ msgid "Could not find target user." msgstr "Konnte keine Statusmeldungen finden." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -327,26 +326,26 @@ msgstr "" "Leerzeichen sind nicht erlaubt." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Nutzername wird bereits verwendet. Suche dir einen anderen aus." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Ungültiger Nutzername." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "" "Homepage ist keine gültige URL. URL’s müssen ein Präfix wie http enthalten." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Der vollständige Name ist zu lang (maximal 255 Zeichen)." @@ -357,7 +356,7 @@ msgid "Description is too long (max %d chars)." msgstr "Die Beschreibung ist zu lang (max. %d Zeichen)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Der eingegebene Aufenthaltsort ist zu lang (maximal 255 Zeichen)." @@ -383,7 +382,7 @@ msgstr "Nutzername „%s“ wird bereits verwendet. Suche dir einen anderen aus. #: actions/apigroupcreate.php:286 actions/editgroup.php:234 #: actions/newgroup.php:178 msgid "Alias can't be the same as nickname." -msgstr "" +msgstr "Alias kann nicht das gleiche wie der Spitznamen sein." #: actions/apigroupismember.php:95 actions/apigroupjoin.php:104 #: actions/apigroupleave.php:104 actions/apigroupmembership.php:91 @@ -452,9 +451,8 @@ msgid "Cannot repeat your own notice." msgstr "Konnte Benachrichtigung nicht aktivieren." #: actions/apistatusesretweet.php:91 -#, fuzzy msgid "Already repeated that notice." -msgstr "Nachricht löschen" +msgstr "Nachricht bereits wiederholt" #: actions/apistatusesshow.php:138 msgid "Status deleted." @@ -475,7 +473,7 @@ msgstr "" msgid "Not found" msgstr "Nicht gefunden" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -531,7 +529,7 @@ msgstr "%s Nachrichten von allen!" #: actions/apitimelineretweetedbyme.php:112 #, php-format msgid "Repeated by %s" -msgstr "" +msgstr "Von %s wiederholt" #: actions/apitimelineretweetedtome.php:111 #, fuzzy, php-format @@ -607,7 +605,7 @@ msgid "Preview" msgstr "Vorschau" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Löschen" @@ -620,13 +618,13 @@ msgid "Crop" msgstr "Zuschneiden" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -697,7 +695,7 @@ msgstr "Ja" msgid "Block this user" msgstr "Diesen Benutzer blockieren" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Konnte Blockierungsdaten nicht speichern." @@ -769,7 +767,7 @@ msgstr "Diese Adresse wurde bereits bestätigt." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Konnte Benutzerdaten nicht aktualisieren." @@ -831,7 +829,7 @@ msgstr "Bist du sicher, dass du diese Nachricht löschen möchtest?" msgid "Do not delete this notice" msgstr "Diese Nachricht nicht löschen" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Nachricht löschen" @@ -967,7 +965,7 @@ msgstr "Standard wiederherstellen" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1274,24 +1272,20 @@ msgid "A selection of some great users on %s" msgstr "Eine Auswahl der tollen Benutzer auf %s" #: actions/file.php:34 -#, fuzzy msgid "No notice ID." -msgstr "Keine Nachricht" +msgstr "Keine Nachrichten ID" #: actions/file.php:38 -#, fuzzy msgid "No notice." msgstr "Keine Nachricht" #: actions/file.php:42 -#, fuzzy msgid "No attachments." msgstr "Keine Anhänge vorhanden" #: actions/file.php:51 -#, fuzzy msgid "No uploaded attachments." -msgstr "Kein solcher Anhang." +msgstr "Kein Anhang geladen." #: actions/finishremotesubscribe.php:69 msgid "Not expecting this response!" @@ -1464,7 +1458,7 @@ msgstr "%s Gruppen-Mitglieder, Seite %d" msgid "A list of the users in this group." msgstr "Liste der Benutzer in dieser Gruppe." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Admin" @@ -1558,7 +1552,7 @@ msgstr "Nur Administratoren können Gruppenmitglieder entsperren." msgid "User is not blocked from group." msgstr "Dieser Nutzer ist nicht von der Gruppe gesperrt." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Fehler beim Freigeben des Benutzers." @@ -1750,7 +1744,7 @@ msgstr "" "Wenn du möchtest kannst du zu der Einladung eine persönliche Nachricht " "anfügen." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Senden" @@ -1872,7 +1866,7 @@ msgid "Error setting user. You are probably not authorized." msgstr "" "Fehler beim setzen des Benutzers. Du bist vermutlich nicht autorisiert." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Anmelden" @@ -1984,7 +1978,7 @@ msgstr "Nachricht gesendet" msgid "Direct message to %s sent" msgstr "Direkte Nachricht an %s abgeschickt" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax-Fehler" @@ -1992,7 +1986,7 @@ msgstr "Ajax-Fehler" msgid "New notice" msgstr "Neue Nachricht" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Nachricht hinzugefügt" @@ -2422,73 +2416,82 @@ msgstr "Aufenthaltsort" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Wo du bist, beispielsweise „Stadt, Gebiet, Land“" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Tags" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Tags über dich selbst (Buchstaben, Zahlen, -, ., und _) durch Kommas oder " "Leerzeichen getrennt" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Sprache" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Bevorzugte Sprache" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Zeitzone" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "In welcher Zeitzone befindest du dich üblicherweise?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Abonniere automatisch alle Kontakte, die mich abonnieren (sinnvoll für Nicht-" "Menschen)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Die Biografie ist zu lang (max. %d Zeichen)" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Keine Zeitzone ausgewählt." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Die eingegebene Sprache ist zu lang (maximal 50 Zeichen)" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Ungültiger Tag: „%s“" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Autosubscribe konnte nicht aktiviert werden." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Konnte Tags nicht speichern." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Konnte Profil nicht speichern." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Konnte Tags nicht speichern." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Einstellungen gespeichert." @@ -2584,7 +2587,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Tag-Wolke" @@ -2722,7 +2725,7 @@ msgstr "Entschuldigung, ungültiger Bestätigungscode." msgid "Registration successful" msgstr "Registrierung erfolgreich" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registrieren" @@ -2920,7 +2923,7 @@ msgstr "" msgid "You already repeated that notice." msgstr "Du hast diesen Benutzer bereits blockiert." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Erstellt" @@ -4061,16 +4064,16 @@ msgid "You are banned from posting notices on this site." msgstr "" "Du wurdest für das Schreiben von Nachrichten auf dieser Seite gesperrt." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problem bei Speichern der Nachricht." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Datenbankfehler beim Einfügen der Antwort: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4126,131 +4129,131 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Seite ohne Titel" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Hauptnavigation" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Startseite" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Persönliches Profil und Freundes-Zeitleiste" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Konto" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Ändere deine E-Mail, dein Avatar, Passwort, Profil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Verbinden" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Konnte nicht zum Server umleiten: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Hauptnavigation" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Einladen" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Lade Freunde und Kollegen ein dir auf %s zu folgen" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Abmelden" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Von der Seite abmelden" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Neues Konto erstellen" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Auf der Seite anmelden" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Hilfe" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Hilf mir!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Suchen" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Suche nach Leuten oder Text" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Seitennachricht" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Lokale Ansichten" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Neue Nachricht" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Unternavigation" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Ãœber" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "AGB" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privatsphäre" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Quellcode" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Kontakt" -#: lib/action.php:741 +#: lib/action.php:742 #, fuzzy msgid "Badge" msgstr "Stups" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "StatusNet-Software-Lizenz" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4259,12 +4262,12 @@ msgstr "" "**%%site.name%%** ist ein Microbloggingdienst von [%%site.broughtby%%](%%" "site.broughtbyurl%%)." -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** ist ein Microbloggingdienst." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4275,32 +4278,32 @@ msgstr "" "(Version %s) betrieben, die unter der [GNU Affero General Public License]" "(http://www.fsf.org/licensing/licenses/agpl-3.0.html) erhältlich ist." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "StatusNet-Software-Lizenz" -#: lib/action.php:799 +#: lib/action.php:800 #, fuzzy msgid "All " msgstr "Alle " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "Lizenz." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Seitenerstellung" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Später" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Vorher" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Es gab ein Problem mit deinem Sessiontoken." @@ -4356,6 +4359,16 @@ msgstr "Nachrichten in denen dieser Anhang erscheint" msgid "Tags for this attachment" msgstr "Tags für diesen Anhang" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Passwort geändert" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Passwort geändert" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Befehl-Ergebnisse" @@ -5094,7 +5107,7 @@ msgstr "" "schicken, um sie in eine Konversation zu verwickeln. Andere Leute können Dir " "Nachrichten schicken, die nur Du sehen kannst." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr "von" @@ -5160,73 +5173,77 @@ msgstr "Versende eine direkte Nachricht" msgid "To" msgstr "An" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "Verfügbare Zeichen" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "Nachricht versenden" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Was ist los, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "Nein" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "im Zusammenhang" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Erstellt" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Auf diese Nachricht antworten" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Antworten" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Nachricht gelöscht." diff --git a/locale/el/LC_MESSAGES/statusnet.po b/locale/el/LC_MESSAGES/statusnet.po index d3aa68684..33c1a818f 100644 --- a/locale/el/LC_MESSAGES/statusnet.po +++ b/locale/el/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:32+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:10:56+0000\n" "Language-Team: Greek\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: el\n" "X-Message-Group: out-statusnet\n" @@ -191,11 +191,11 @@ msgstr "ΑπÎτυχε η ενημÎÏωση του χÏήστη." msgid "You cannot block yourself!" msgstr "Δεν μποÏείτε να εμποδίσετε τον εαυτό σας!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -311,31 +311,31 @@ msgid "Could not find target user." msgstr "ΑπÎτυχε η εÏÏεση οποιασδήποτε κατάστασης." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Το ψευδώνυμο Ï€ÏÎπει να Îχει μόνο πεζοÏÏ‚ χαÏακτήÏες και χωÏίς κενά." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Το ψευδώνυμο είναι ήδη σε χÏήση. Δοκιμάστε κάποιο άλλο." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "" #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Η αÏχική σελίδα δεν είναι ÎγκυÏο URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Το ονοματεπώνυμο είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î¿ (μÎγιστο 255 χαÏακτ.)." @@ -346,7 +346,7 @@ msgid "Description is too long (max %d chars)." msgstr "Η πεÏιγÏαφή είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î· (μÎγιστο %d χαÏακτ.)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Η τοποθεσία είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î· (μÎγιστο 255 χαÏακτ.)." @@ -463,7 +463,7 @@ msgstr "" msgid "Not found" msgstr "" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -592,7 +592,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "ΔιαγÏαφή" @@ -605,13 +605,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -684,7 +684,7 @@ msgstr "Îαί" msgid "Block this user" msgstr "" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -756,7 +756,7 @@ msgstr "" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "ΑπÎτυχε η ενημÎÏωση του χÏήστη." @@ -818,7 +818,7 @@ msgstr "Είσαι σίγουÏος ότι θες να διαγÏάψεις αυ msgid "Do not delete this notice" msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "" @@ -956,7 +956,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1455,7 +1455,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "ΔιαχειÏιστής" @@ -1544,7 +1544,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "" @@ -1719,7 +1719,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "" @@ -1815,7 +1815,7 @@ msgstr "Λάθος όνομα χÏήστη ή κωδικός" msgid "Error setting user. You are probably not authorized." msgstr "" -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "ΣÏνδεση" @@ -1927,7 +1927,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1935,7 +1935,7 @@ msgstr "" msgid "New notice" msgstr "" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "" @@ -2363,34 +2363,38 @@ msgstr "Τοποθεσία" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 #, fuzzy msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" @@ -2398,38 +2402,43 @@ msgstr "" "Αυτόματα γίνε συνδÏομητής σε όσους γίνονται συνδÏομητÎÏ‚ σε μÎνα (χÏήση " "κυÏίως από λογισμικό και όχι ανθÏώπους)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "Το βιογÏαφικό είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î¿ (μÎγιστο 140 χαÏακτ.)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "ΑπÎτυχε η ενημÎÏωση του χÏήστη για την αυτόματη συνδÏομή." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "ΑπÎτυχε η αποθήκευση του Ï€Ïοφίλ." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "" @@ -2523,7 +2532,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2661,7 +2670,7 @@ msgstr "" msgid "Registration successful" msgstr "" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "" @@ -2849,7 +2858,7 @@ msgstr "" msgid "You already repeated that notice." msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "ΔημιουÏγία" @@ -3940,16 +3949,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Σφάλμα βάσης δεδομÎνων κατά την εισαγωγή απάντησης: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4005,129 +4014,129 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "ΑÏχή" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "ΛογαÏιασμός" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "ΣÏνδεση" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Αδυναμία ανακατεÏθηνσης στο διακομιστή: %s" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Î Ïοσκάλεσε φίλους και συναδÎλφους σου να γίνουν μÎλη στο %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "ΑποσÏνδεση" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "ΔημιουÏγία Îναν λογαÏιασμοÏ" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Βοήθεια" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Βοηθήστε με!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "ΠεÏί" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "ΣυχνÎÏ‚ εÏωτήσεις" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Επικοινωνία" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, fuzzy, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4136,13 +4145,13 @@ msgstr "" "To **%%site.name%%** είναι μία υπηÏεσία microblogging (μικÏο-ιστολογίου) που " "ÎφεÏε κοντά σας το [%%site.broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, fuzzy, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "" "Το **%%site.name%%** είναι μία υπηÏεσία microblogging (μικÏο-ιστολογίου). " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4150,31 +4159,31 @@ msgid "" "org/licensing/licenses/agpl-3.0.html)." msgstr "" -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4229,6 +4238,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Ο κωδικός αποθηκεÏτηκε." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Ο κωδικός αποθηκεÏτηκε." + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4897,7 +4916,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "από" @@ -4962,69 +4981,73 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "ΔιαθÎσιμοι χαÏακτήÏες" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Επαναλαμβάνεται από" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Ρυθμίσεις OpenID" diff --git a/locale/en_GB/LC_MESSAGES/statusnet.po b/locale/en_GB/LC_MESSAGES/statusnet.po index b500c9290..61660c2fd 100644 --- a/locale/en_GB/LC_MESSAGES/statusnet.po +++ b/locale/en_GB/LC_MESSAGES/statusnet.po @@ -10,12 +10,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:35+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:01+0000\n" "Language-Team: British English\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: en-gb\n" "X-Message-Group: out-statusnet\n" @@ -201,11 +201,11 @@ msgstr "Could not update your design." msgid "You cannot block yourself!" msgstr "You cannot block yourself!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Block user failed." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Unblock user failed." @@ -317,31 +317,31 @@ msgid "Could not find target user." msgstr "Could not find target user." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Nickname must have only lowercase letters and numbers, and no spaces." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Nickname already in use. Try another one." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Not a valid nickname." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Homepage is not a valid URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Full name is too long (max 255 chars)." @@ -352,7 +352,7 @@ msgid "Description is too long (max %d chars)." msgstr "Description is too long (max %d chars)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Location is too long (max 255 chars)." @@ -467,7 +467,7 @@ msgstr "That's too long. Max notice size is %d chars." msgid "Not found" msgstr "Not found" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "Max notice size is %d chars, including attachment URL." @@ -596,7 +596,7 @@ msgid "Preview" msgstr "Preview" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Delete" @@ -609,13 +609,13 @@ msgid "Crop" msgstr "Crop" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -688,7 +688,7 @@ msgstr "Yes" msgid "Block this user" msgstr "Block this user" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Failed to save block information." @@ -760,7 +760,7 @@ msgstr "That address has already been confirmed." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Couldn't update user." @@ -822,7 +822,7 @@ msgstr "Are you sure you want to delete this notice?" msgid "Do not delete this notice" msgstr "Do not delete this notice" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Delete this notice" @@ -839,9 +839,8 @@ msgid "You can only delete local users." msgstr "You can only delete local users." #: actions/deleteuser.php:110 actions/deleteuser.php:133 -#, fuzzy msgid "Delete user" -msgstr "Delete" +msgstr "Delete user" #: actions/deleteuser.php:135 msgid "" @@ -865,23 +864,21 @@ msgid "Design settings for this StatusNet site." msgstr "Design settings for this StausNet site." #: actions/designadminpanel.php:275 -#, fuzzy msgid "Invalid logo URL." -msgstr "Invalid size." +msgstr "nvalid logo URL." #: actions/designadminpanel.php:279 -#, fuzzy, php-format +#, php-format msgid "Theme not available: %s" -msgstr "This page is not available in a " +msgstr "Theme not available: %s" #: actions/designadminpanel.php:375 msgid "Change logo" msgstr "Change logo" #: actions/designadminpanel.php:380 -#, fuzzy msgid "Site logo" -msgstr "Invite" +msgstr "Site logo" #: actions/designadminpanel.php:387 #, fuzzy @@ -965,7 +962,7 @@ msgstr "Reset back to default" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1476,7 +1473,7 @@ msgstr "%s group members, page %d" msgid "A list of the users in this group." msgstr "A list of the users in this group." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Admin" @@ -1568,7 +1565,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "User is not blocked from group." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Error removing the block." @@ -1750,7 +1747,7 @@ msgstr "Personal message" msgid "Optionally add a personal message to the invitation." msgstr "Optionally add a personal message to the invitation." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Send" @@ -1874,7 +1871,7 @@ msgstr "Incorrect username or password." msgid "Error setting user. You are probably not authorized." msgstr "You are not authorised." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Login" @@ -1986,7 +1983,7 @@ msgstr "Message sent" msgid "Direct message to %s sent" msgstr "Direct message to %s sent" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax Error" @@ -1994,7 +1991,7 @@ msgstr "Ajax Error" msgid "New notice" msgstr "New notice" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Notice posted" @@ -2424,71 +2421,80 @@ msgstr "Location" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Where you are, like \"City, State (or Region), Country\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Tags" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Language" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Preferred language" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Timezone" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "In which timezone are you?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Bio is too long (max %d chars)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Timezone not selected." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Language is too long (max 50 chars)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Invalid tag: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Couldn't update user for autosubscribe." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Couldn't save tags." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Couldn't save profile." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Couldn't save tags." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Settings saved." @@ -2591,7 +2597,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Tag cloud" @@ -2730,7 +2736,7 @@ msgstr "Error with confirmation code." msgid "Registration successful" msgstr "Registration successful" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Register" @@ -2923,7 +2929,7 @@ msgstr "You can't repeat your own notice." msgid "You already repeated that notice." msgstr "You have already blocked this user." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Created" @@ -4049,16 +4055,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "You are banned from posting notices on this site." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problem saving notice." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "DB error inserting reply: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4113,130 +4119,130 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Untitled page" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Primary site navigation" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Home" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Personal profile and friends timeline" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Account" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Change your e-mail, avatar, password, profile" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Connect" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Could not redirect to server: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Primary site navigation" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Invite" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Invite friends and colleagues to join you on %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Logout" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Logout from the site" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Create an account" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Login to the site" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Help" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Help me!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Search" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Search for people or text" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Site notice" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Local views" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Page notice" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Secondary site navigation" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "About" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "F.A.Q." -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privacy" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Source" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contact" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Badge" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "StatusNet software licence" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4245,12 +4251,12 @@ msgstr "" "**%%site.name%%** is a microblogging service brought to you by [%%site." "broughtby%%](%%site.broughtbyurl%%)." -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** is a microblogging service." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4261,31 +4267,31 @@ msgstr "" "s, available under the [GNU Affero General Public Licence](http://www.fsf." "org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Site content license" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "All " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "licence." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Pagination" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "After" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Before" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "There was a problem with your session token." @@ -4344,6 +4350,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Password change" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Password change" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Command results" @@ -5033,7 +5049,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr "from" @@ -5098,71 +5114,75 @@ msgstr "Send a direct notice" msgid "To" msgstr "To" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Available characters" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Send a notice" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "What's up, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "No" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "in context" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Created" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Reply to this notice" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Reply" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Notice deleted." diff --git a/locale/es/LC_MESSAGES/statusnet.po b/locale/es/LC_MESSAGES/statusnet.po index f46dc63ed..93320db27 100644 --- a/locale/es/LC_MESSAGES/statusnet.po +++ b/locale/es/LC_MESSAGES/statusnet.po @@ -11,12 +11,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:38+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:06+0000\n" "Language-Team: Spanish\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: es\n" "X-Message-Group: out-statusnet\n" @@ -196,11 +196,11 @@ msgstr "No se pudo actualizar el usuario." msgid "You cannot block yourself!" msgstr "¡No puedes bloquearte a tà mismo!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Falló bloquear usuario." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Falló desbloquear usuario." @@ -312,7 +312,7 @@ msgid "Could not find target user." msgstr "No se pudo encontrar ningún usuario de destino." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -320,25 +320,25 @@ msgstr "" "espacios." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "El apodo ya existe. Prueba otro." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Apodo no válido" #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "La página de inicio no es un URL válido." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Tu nombre es demasiado largo (max. 255 carac.)" @@ -349,7 +349,7 @@ msgid "Description is too long (max %d chars)." msgstr "La descripción es demasiado larga (máx. %d caracteres)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "La ubicación es demasiado larga (máx. 255 caracteres)." @@ -467,7 +467,7 @@ msgstr "Demasiado largo. La longitud máxima es de 140 caracteres. " msgid "Not found" msgstr "No encontrado" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -598,7 +598,7 @@ msgid "Preview" msgstr "Vista previa" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Borrar" @@ -611,13 +611,13 @@ msgid "Crop" msgstr "Cortar" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -691,7 +691,7 @@ msgstr "SÃ" msgid "Block this user" msgstr "Bloquear este usuario." -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "No se guardó información de bloqueo." @@ -764,7 +764,7 @@ msgstr "Esa dirección ya fue confirmada." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "No se pudo actualizar el usuario." @@ -828,7 +828,7 @@ msgstr "¿Estás seguro de que quieres eliminar este aviso?" msgid "Do not delete this notice" msgstr "No se puede eliminar este aviso." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Borrar este aviso" @@ -971,7 +971,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1475,7 +1475,7 @@ msgstr "Miembros del grupo %s, página %d" msgid "A list of the users in this group." msgstr "Lista de los usuarios en este grupo." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Admin" @@ -1569,7 +1569,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "El usuario te ha bloqueado." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "Error al sacar bloqueo." @@ -1757,7 +1757,7 @@ msgstr "Mensaje Personal" msgid "Optionally add a personal message to the invitation." msgstr "Opcionalmente añada un mensaje personalizado a su invitación." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Enviar" @@ -1884,7 +1884,7 @@ msgstr "Nombre de usuario o contraseña incorrectos." msgid "Error setting user. You are probably not authorized." msgstr "No autorizado." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Inicio de sesión" @@ -1999,7 +1999,7 @@ msgstr "Mensaje" msgid "Direct message to %s sent" msgstr "Se envió mensaje directo a %s" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Error de Ajax" @@ -2007,7 +2007,7 @@ msgstr "Error de Ajax" msgid "New notice" msgstr "Nuevo aviso" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 #, fuzzy msgid "Notice posted" msgstr "Aviso publicado" @@ -2454,72 +2454,81 @@ msgstr "Ubicación" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Dónde estás, por ejemplo \"Ciudad, Estado (o Región), PaÃs\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Tags" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "Tags para ti (letras, números, -, ., y _), coma - o espacio - separado" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Idioma" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Lenguaje de preferencia" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Zona horaria" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "En que zona horaria se encuentra normalmente?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Suscribirse automáticamente a quien quiera que se suscriba a mà (es mejor " "para no-humanos)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "La biografÃa es demasiado larga (máx. 140 caracteres)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Zona horaria no seleccionada" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Idioma es muy largo ( max 50 car.)" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "Tag no válido: '%s' " -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "No se pudo actualizar el usuario para autosuscribirse." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "No se pudo guardar tags." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "No se pudo guardar el perfil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "No se pudo guardar tags." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Se guardó configuración." @@ -2618,7 +2627,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Nube de tags" @@ -2761,7 +2770,7 @@ msgstr "Error con el código de confirmación." msgid "Registration successful" msgstr "Registro exitoso." -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registrarse" @@ -2959,7 +2968,7 @@ msgstr "No puedes registrarte si no estás de acuerdo con la licencia." msgid "You already repeated that notice." msgstr "Ya has bloqueado este usuario." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Crear" @@ -4109,16 +4118,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Tienes prohibido publicar avisos en este sitio." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Hubo un problema al guardar el aviso." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Error de BD al insertar respuesta: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4174,129 +4183,129 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Página sin tÃtulo" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Navegación de sitio primario" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Inicio" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Perfil personal y lÃnea de tiempo de amigos" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Cuenta" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Cambia tu correo electrónico, avatar, contraseña, perfil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Conectarse" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Conectar a los servicios" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Navegación de sitio primario" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Invitar" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Invita a amigos y colegas a unirse a %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Salir" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Salir de sitio" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Crear una cuenta" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Ingresar a sitio" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Ayuda" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Ayúdame!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Buscar" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Buscar personas o texto" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Aviso de sitio" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Vistas locales" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Aviso de página" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Navegación de sitio secundario" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Acerca de" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "Preguntas Frecuentes" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privacidad" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Fuente" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Ponerse en contacto" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Insignia" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Licencia de software de StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4305,12 +4314,12 @@ msgstr "" "**%%site.name%%** es un servicio de microblogueo de [%%site.broughtby%%**](%%" "site.broughtbyurl%%)." -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** es un servicio de microblogueo." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4321,31 +4330,31 @@ msgstr "" "disponible bajo la [GNU Affero General Public License](http://www.fsf.org/" "licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Licencia de contenido del sitio" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Todo" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "Licencia." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginación" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Después" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Antes" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Hubo problemas con tu clave de sesión." @@ -4404,6 +4413,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Cambio de contraseña " + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Cambio de contraseña " + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Resultados de comando" @@ -5090,7 +5109,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "desde" @@ -5154,72 +5173,76 @@ msgstr "Enviar un aviso directo" msgid "To" msgstr "Para" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "Caracteres disponibles" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "Enviar un aviso" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "¿Qué tal, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "N" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "S" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "E" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "en" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "en contexto" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Crear" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Responder este aviso." -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Responder" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Aviso borrado" diff --git a/locale/fa/LC_MESSAGES/statusnet.po b/locale/fa/LC_MESSAGES/statusnet.po index c22de28a4..bce137a35 100644 --- a/locale/fa/LC_MESSAGES/statusnet.po +++ b/locale/fa/LC_MESSAGES/statusnet.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:44+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:18+0000\n" "Last-Translator: Ahmad Sufi Mahmudi\n" "Language-Team: Persian\n" "MIME-Version: 1.0\n" @@ -20,7 +20,7 @@ msgstr "" "X-Language-Code: fa\n" "X-Message-Group: out-statusnet\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" #: actions/all.php:63 actions/public.php:97 actions/replies.php:92 @@ -195,11 +195,11 @@ msgstr "نمی‌توان طرØ‌تان به‌هنگام‌سازی کرد." msgid "You cannot block yourself!" msgstr "شما نمی‌توانید خودتان رو مسدود کنید!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "مسدود کردن کاربر شکست خورد." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "باز کردن کاربر ناموÙÙ‚ بود." @@ -311,31 +311,31 @@ msgid "Could not find target user." msgstr "نمی‌توان کاربر هد٠را پیدا کرد." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "لقب باید شامل Øرو٠کوچک Ùˆ اعداد Ùˆ بدون Ùاصله باشد." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "این لقب در Øال Øاضر ثبت شده است. لطÙا یکی دیگر انتخاب کنید." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "لقب نا معتبر." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "برگهٔ آغازین یک نشانی معتبر نیست." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "نام کامل طولانی است (Û²ÛµÛµ Øر٠در Øالت بیشینه(." @@ -346,7 +346,7 @@ msgid "Description is too long (max %d chars)." msgstr "توصی٠بسیار زیاد است (Øداکثر %d ØرÙ)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "مکان طولانی است (Øداکثر Û²ÛµÛµ ØرÙ)" @@ -461,7 +461,7 @@ msgstr "خیلی طولانی است. Øداکثر طول مجاز پیام %d Ø msgid "Not found" msgstr "یاÙت نشد" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "Øداکثر طول پیام %d Øر٠است Ú©Ù‡ شامل ضمیمه نیز می‌باشد" @@ -591,7 +591,7 @@ msgid "Preview" msgstr "پیش‌نمایش" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "ØØ°Ù" @@ -604,13 +604,13 @@ msgid "Crop" msgstr "برش" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -684,7 +684,7 @@ msgstr "بله" msgid "Block this user" msgstr "کاربر را مسدود Ú©Ù†" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -756,7 +756,7 @@ msgstr "آن نشانی در Øال Øاضر تصدیق شده است." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "نمی‌توان کاربر را به روز کرد." @@ -818,7 +818,7 @@ msgstr "آیا اطمینان دارید Ú©Ù‡ می‌خواهید این پیا٠msgid "Do not delete this notice" msgstr "این پیام را پاک Ù†Ú©Ù†" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "این پیام را پاک Ú©Ù†" @@ -956,7 +956,7 @@ msgstr "برگشت به Øالت پیش گزیده" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1445,7 +1445,7 @@ msgstr "اعضای گروه %sØŒ صÙØÙ‡Ù” %d" msgid "A list of the users in this group." msgstr "یک Ùهرست از کاربران در این گروه" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "مدیر" @@ -1541,7 +1541,7 @@ msgstr "تنها یک مدیر توانایی برداشتن منع کاربرا msgid "User is not blocked from group." msgstr "کاربر از گروه منع نشده است." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "اشکال در پاکسازی" @@ -1722,7 +1722,7 @@ msgstr "پیام خصوصی" msgid "Optionally add a personal message to the invitation." msgstr "اگر دوست دارید می‌توانید یک پیام به همراه دعوت نامه ارسال کنید." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Ùرستادن" @@ -1818,7 +1818,7 @@ msgstr "نام کاربری یا رمز عبور نادرست." msgid "Error setting user. You are probably not authorized." msgstr "خطا در تنظیم کاربر. شما اØتمالا اجازه ÛŒ این کار را ندارید." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "ورود" @@ -1929,7 +1929,7 @@ msgstr "پیام Ùرستاده‌شد" msgid "Direct message to %s sent" msgstr "پیام مستقیم به %s Ùرستاده شد." -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "اشکال آژاکسی" @@ -1937,7 +1937,7 @@ msgstr "اشکال آژاکسی" msgid "New notice" msgstr "Ø¢Ú¯Ù‡ÛŒ جدید" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Ø¢Ú¯Ù‡ÛŒ Ùرستاده‌شد." @@ -2017,7 +2017,7 @@ msgstr "نوع Ù…Øتوا " #: actions/oembed.php:160 msgid "Only " -msgstr "Ùقط" +msgstr " Ùقط" #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1031 #: lib/api.php:1059 lib/api.php:1169 @@ -2368,69 +2368,78 @@ msgstr "موقعیت" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "برچسب‌ها" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "زبان" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "زبان برگزیده" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "منطقهٔ‌زمانی" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "شما معمولا در کدام منطقه ÛŒ زمانی هستید؟" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "منطقه‌ی زمانی انتخاب نشده است." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "کلام بسیار طولانی است( Øداکثر ÛµÛ° کاراکتر)" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "نشان نادرست »%s«" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "نمی‌توان نشان را ذخیره کرد." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "نمی‌توان شناسه را ذخیره کرد." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "نمی‌توان نشان را ذخیره کرد." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "تنظیمات ذخیره شد." @@ -2523,7 +2532,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2663,7 +2672,7 @@ msgstr "با عرض تاسÙØŒ کد دعوت نا معتبر است." msgid "Registration successful" msgstr "ثبت نام با موÙقیت انجام شد." -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "ثبت نام" @@ -2831,7 +2840,7 @@ msgstr "شما نمی توانید Ø¢Ú¯Ù‡ÛŒ خودتان را تکرار Ú©Ù†ÛŒØ msgid "You already repeated that notice." msgstr "شما قبلا آن Ø¢Ú¯Ù‡ÛŒ را تکرار کردید." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "" @@ -3911,16 +3920,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "شما از Ùرستادن پست در این سایت مردود شدید ." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "مشکل در ذخیره کردن Ø¢Ú¯Ù‡ÛŒ." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -3975,140 +3984,140 @@ msgstr "" msgid "Untitled page" msgstr "صÙØÙ‡ ÛŒ بدون عنوان" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "خانه" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Øساب کاربری" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "آدرس ایمیل، آواتار، کلمه ÛŒ عبور، پروÙایل خود را تغییر دهید" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "وصل‌شدن" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "متصل شدن به خدمات" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "تغییر پیکربندی سایت" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "دعوت‌کردن" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr " به شما ملØÙ‚ شوند %s دوستان Ùˆ همکاران را دعوت کنید تا در" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "خروج" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "خارج شدن از سایت ." -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "یک Øساب کاربری بسازید" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "ورود به وب‌گاه" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Ú©Ù…Ú©" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "به من Ú©Ù…Ú© کنید!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "جست‌وجو" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "جستجو برای شخص با متن" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "خبر سایت" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "دید Ù…ØÙ„ÛŒ" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "خبر صÙØÙ‡" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "دربارهٔ" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "سوال‌های رایج" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "خصوصی" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "منبع" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "تماس" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "StatusNet مجوز نرم اÙزار" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." "broughtby%%](%%site.broughtbyurl%%). " msgstr "" -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4116,31 +4125,31 @@ msgid "" "org/licensing/licenses/agpl-3.0.html)." msgstr "" -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "مجوز Ù…Øتویات سایت" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "همه " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "مجوز." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "صÙØÙ‡ بندى" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "بعد از" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "قبل از" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4192,6 +4201,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "تغییر گذرواژه" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "تغییر گذرواژه" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "نتیجه دستور" @@ -4370,29 +4389,24 @@ msgid "You are not subscribed to anyone." msgstr "شما توسط هیچ کس تصویب نشده اید ." #: lib/command.php:687 -#, fuzzy msgid "You are subscribed to this person:" msgid_plural "You are subscribed to these people:" msgstr[0] "هم اکنون شما این کاربران را دنبال می‌کنید: " #: lib/command.php:707 -#, fuzzy msgid "No one is subscribed to you." msgstr "هیچکس شما را تایید نکرده ." #: lib/command.php:709 -#, fuzzy msgid "This person is subscribed to you:" msgid_plural "These people are subscribed to you:" msgstr[0] "هیچکس شما را تایید نکرده ." #: lib/command.php:729 -#, fuzzy msgid "You are not a member of any groups." msgstr "شما در هیچ گروهی عضو نیستید ." #: lib/command.php:731 -#, fuzzy msgid "You are a member of this group:" msgid_plural "You are a member of these groups:" msgstr[0] "شما یک عضو این گروه نیستید." @@ -4866,7 +4880,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "از" @@ -4931,69 +4945,73 @@ msgstr "یک Ø¢Ú¯Ù‡ÛŒ مستقیم بÙرستید." msgid "To" msgstr "به" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "کاراکترهای موجود" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "یک Ø¢Ú¯Ù‡ÛŒ بÙرستید" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Ú†Ù‡ شده %s ?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "ضمیمه کردن" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "یک Ùایل ضمیمه کنید" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "در" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "در زمینه" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "تکرار از" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "به این Ø¢Ú¯Ù‡ÛŒ جواب دهید" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "جواب دادن" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Ø¢Ú¯Ù‡ÛŒ تکرار شد" diff --git a/locale/fi/LC_MESSAGES/statusnet.po b/locale/fi/LC_MESSAGES/statusnet.po index da0d8ac23..ece1dfee1 100644 --- a/locale/fi/LC_MESSAGES/statusnet.po +++ b/locale/fi/LC_MESSAGES/statusnet.po @@ -10,12 +10,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:41+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:14+0000\n" "Language-Team: Finnish\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: out-statusnet\n" @@ -198,11 +198,11 @@ msgstr "Ei voitu päivittää käyttäjää." msgid "You cannot block yourself!" msgstr "Et voi lopettaa itsesi tilausta!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Käyttäjän esto epäonnistui." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Käyttäjän eston poisto epäonnistui." @@ -317,7 +317,7 @@ msgid "Could not find target user." msgstr "Ei löytynyt yhtään päivitystä." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -325,25 +325,25 @@ msgstr "" "välilyöntiä." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Tunnus on jo käytössä. Yritä toista tunnusta." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Tuo ei ole kelvollinen tunnus." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Kotisivun verkko-osoite ei ole toimiva." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Koko nimi on liian pitkä (max 255 merkkiä)." @@ -354,7 +354,7 @@ msgid "Description is too long (max %d chars)." msgstr "kuvaus on liian pitkä (max 140 merkkiä)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Kotipaikka on liian pitkä (max 255 merkkiä)." @@ -471,7 +471,7 @@ msgstr "Päivitys on liian pitkä. Maksimipituus on %d merkkiä." msgid "Not found" msgstr "Ei löytynyt" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "Maksimikoko päivitykselle on %d merkkiä, mukaan lukien URL-osoite." @@ -601,7 +601,7 @@ msgid "Preview" msgstr "Esikatselu" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Poista" @@ -614,13 +614,13 @@ msgid "Crop" msgstr "Rajaa" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -693,7 +693,7 @@ msgstr "Kyllä" msgid "Block this user" msgstr "Estä tämä käyttäjä" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Käyttäjän estotiedon tallennus epäonnistui." @@ -766,7 +766,7 @@ msgstr "Tämä osoite on jo vahvistettu." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Ei voitu päivittää käyttäjää." @@ -828,7 +828,7 @@ msgstr "Oletko varma että haluat poistaa tämän päivityksen?" msgid "Do not delete this notice" msgstr "Älä poista tätä päivitystä" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Poista tämä päivitys" @@ -973,7 +973,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1472,7 +1472,7 @@ msgstr "Ryhmän %s jäsenet, sivu %d" msgid "A list of the users in this group." msgstr "Lista ryhmän käyttäjistä." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Ylläpito" @@ -1562,7 +1562,7 @@ msgstr "Vain ylläpitäjä voi poistaa eston ryhmän jäseniltä." msgid "User is not blocked from group." msgstr "Käyttäjää ei ole estetty ryhmästä." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Tapahtui virhe, kun estoa poistettiin." @@ -1751,7 +1751,7 @@ msgstr "Henkilökohtainen viesti" msgid "Optionally add a personal message to the invitation." msgstr "Voit myös lisätä oman viestisi kutsuun" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Lähetä" @@ -1874,7 +1874,7 @@ msgstr "Väärä käyttäjätunnus tai salasana" msgid "Error setting user. You are probably not authorized." msgstr "Sinulla ei ole valtuutusta tähän." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Kirjaudu sisään" @@ -1988,7 +1988,7 @@ msgstr "Viesti lähetetty" msgid "Direct message to %s sent" msgstr "Suora viesti käyttäjälle %s lähetetty" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax-virhe" @@ -1996,7 +1996,7 @@ msgstr "Ajax-virhe" msgid "New notice" msgstr "Uusi päivitys" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Päivitys lähetetty" @@ -2439,73 +2439,82 @@ msgstr "Kotipaikka" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Olinpaikka kuten \"Kaupunki, Maakunta (tai Lääni), Maa\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Tagit" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Kuvaa itseäsi henkilötageilla (sanoja joissa voi olla muita kirjaimia kuin " "ääkköset, numeroita, -, ., ja _), pilkulla tai välilyönnillä erotettuna" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Kieli" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Ensisijainen kieli" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Aikavyöhyke" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Missä aikavyöhykkeessä olet normaalisti?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Tilaa automaattisesti kaikki, jotka tilaavat päivitykseni (ei sovi hyvin " "ihmiskäyttäjille)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "\"Tietoja\" on liian pitkä (max 140 merkkiä)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Aikavyöhykettä ei ole valittu." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Kieli on liian pitkä (max 50 merkkiä)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Virheellinen tagi: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Ei voitu asettaa käyttäjälle automaattista tilausta." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Tageja ei voitu tallentaa." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Ei voitu tallentaa profiilia." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Tageja ei voitu tallentaa." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Asetukset tallennettu." @@ -2602,7 +2611,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Tagipilvi" @@ -2742,7 +2751,7 @@ msgstr "Virheellinen kutsukoodin." msgid "Registration successful" msgstr "Rekisteröityminen onnistui" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Rekisteröidy" @@ -2942,7 +2951,7 @@ msgstr "Et voi rekisteröityä, jos et hyväksy lisenssiehtoja." msgid "You already repeated that notice." msgstr "Sinä olet jo estänyt tämän käyttäjän." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Luotu" @@ -4081,16 +4090,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Päivityksesi tähän palveluun on estetty." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Ongelma päivityksen tallentamisessa." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Tietokantavirhe tallennettaessa vastausta: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4146,131 +4155,131 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Nimetön sivu" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Ensisijainen sivunavigointi" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Koti" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Henkilökohtainen profiili ja kavereiden aikajana" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Käyttäjätili" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Muuta sähköpostiosoitettasi, kuvaasi, salasanaasi, profiiliasi" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Yhdistä" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Ei voitu uudelleenohjata palvelimelle: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Ensisijainen sivunavigointi" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Kutsu" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Kutsu kavereita ja työkavereita liittymään palveluun %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Kirjaudu ulos" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Kirjaudu ulos palvelusta" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Luo uusi käyttäjätili" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Kirjaudu sisään palveluun" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Ohjeet" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Auta minua!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Haku" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Hae ihmisiä tai tekstiä" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Palvelun ilmoitus" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Paikalliset näkymät" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Sivuilmoitus" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Toissijainen sivunavigointi" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Tietoa" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "UKK" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Yksityisyys" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Lähdekoodi" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Ota yhteyttä" -#: lib/action.php:741 +#: lib/action.php:742 #, fuzzy msgid "Badge" msgstr "Tönäise" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "StatusNet-ohjelmiston lisenssi" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4279,12 +4288,12 @@ msgstr "" "**%%site.name%%** on mikroblogipalvelu, jonka tarjoaa [%%site.broughtby%%](%%" "site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** on mikroblogipalvelu. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4295,32 +4304,32 @@ msgstr "" "versio %s, saatavilla lisenssillä [GNU Affero General Public License](http://" "www.fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "StatusNet-ohjelmiston lisenssi" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Kaikki " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "lisenssi." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Sivutus" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Myöhemmin" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Aiemmin" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Istuntoavaimesi kanssa oli ongelma." @@ -4380,6 +4389,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Salasanan vaihto" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Salasanan vaihto" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Komennon tulos" @@ -5076,7 +5095,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr " lähteestä " @@ -5141,72 +5160,76 @@ msgstr "Lähetä suora viesti" msgid "To" msgstr "Vastaanottaja" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Sallitut merkit" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Lähetä päivitys" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Mitä teet juuri nyt, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "Ei" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "Ei sisältöä!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Luotu" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Vastaa tähän päivitykseen" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Vastaus" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Päivitys on poistettu." diff --git a/locale/fr/LC_MESSAGES/statusnet.po b/locale/fr/LC_MESSAGES/statusnet.po index 3e4a83d9b..0dda77224 100644 --- a/locale/fr/LC_MESSAGES/statusnet.po +++ b/locale/fr/LC_MESSAGES/statusnet.po @@ -13,12 +13,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:51+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:23+0000\n" "Language-Team: French\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fr\n" "X-Message-Group: out-statusnet\n" @@ -204,11 +204,11 @@ msgstr "Impossible de mettre à jour votre conception." msgid "You cannot block yourself!" msgstr "Vous ne pouvez pas vous bloquer vous-même !" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Le blocage de l’utilisateur a échoué." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Le déblocage de l’utilisateur a échoué." @@ -322,7 +322,7 @@ msgid "Could not find target user." msgstr "Impossible de trouver l’utilisateur cible." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -330,25 +330,25 @@ msgstr "" "chiffres, sans espaces." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Pseudo déjà utilisé. Essayez-en un autre." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Pseudo invalide." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "L’adresse du site personnel n’est pas un URL valide. " #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Nom complet trop long (maximum de 255 caractères)." @@ -359,7 +359,7 @@ msgid "Description is too long (max %d chars)." msgstr "La description est trop longue (%d caractères maximum)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Emplacement trop long (maximum de 255 caractères)." @@ -474,7 +474,7 @@ msgstr "C’est trop long ! La taille maximale de l’avis est de %d caractères msgid "Not found" msgstr "Non trouvé" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -607,7 +607,7 @@ msgid "Preview" msgstr "Aperçu" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Supprimer" @@ -620,13 +620,13 @@ msgid "Crop" msgstr "Recadrer" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -701,7 +701,7 @@ msgstr "Oui" msgid "Block this user" msgstr "Bloquer cet utilisateur" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Impossible d’enregistrer les informations de blocage." @@ -773,7 +773,7 @@ msgstr "Cette adresse a déjà été confirmée." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Impossible de mettre à jour l’utilisateur." @@ -835,7 +835,7 @@ msgstr "Êtes-vous sûr(e) de vouloir supprimer cet avis ?" msgid "Do not delete this notice" msgstr "Ne pas supprimer cet avis" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Supprimer cet avis" @@ -975,7 +975,7 @@ msgstr "Revenir aux valeurs par défaut" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1477,7 +1477,7 @@ msgstr "Membres du groupe %s - page %d" msgid "A list of the users in this group." msgstr "Liste des utilisateurs inscrits à ce groupe." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Administrer" @@ -1577,7 +1577,7 @@ msgstr "Seul un administrateur peut débloquer les membres du groupes." msgid "User is not blocked from group." msgstr "Cet utilisateur n’est pas bloqué du groupe." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Erreur lors de l’annulation du blocage." @@ -1768,7 +1768,7 @@ msgstr "Message personnel" msgid "Optionally add a personal message to the invitation." msgstr "Ajouter un message personnel à l’invitation (optionnel)." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Envoyer" @@ -1894,7 +1894,7 @@ msgstr "" "Erreur lors de la mise en place de l'utilisateur. Vous n'y êtes probablement " "pas autorisé." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Ouvrir une session" @@ -2012,7 +2012,7 @@ msgstr "Message envoyé" msgid "Direct message to %s sent" msgstr "Votre message a été envoyé à %s" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Erreur Ajax" @@ -2020,7 +2020,7 @@ msgstr "Erreur Ajax" msgid "New notice" msgstr "Nouvel avis" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Avis publié" @@ -2454,73 +2454,81 @@ msgstr "Emplacement" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Indiquez votre emplacement, ex.: « Ville, État (ou région), Pays »" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "Partager ma localisation lorsque je poste des avis" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Marques" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Marques pour vous-même (lettres, chiffres, -, ., et _), séparées par des " "virgules ou des espaces" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Langue" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Langue préférée" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Fuseau horaire" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Quel est votre fuseau horaire habituel ?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "M’abonner automatiquement à tous ceux qui s’abonnent à moi (recommandé pour " "les utilisateurs non-humains)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "La bio est trop longue (%d caractères maximum)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Aucun fuseau horaire n’a été choisi." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "La langue est trop longue (255 caractères maximum)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Marque invalide : « %s »" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Impossible de mettre à jour l’auto-abonnement." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Impossible d’enregistrer les préférences de localisation." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Impossible d’enregistrer le profil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Impossible d’enregistrer les marques." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Préférences enregistrées." @@ -2627,7 +2635,7 @@ msgstr "" "Pourquoi ne pas [créer un compte](%%action.register%%) et être le premier à " "en poster un !" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Nuage de marques" @@ -2771,7 +2779,7 @@ msgstr "Désolé, code d’invitation invalide." msgid "Registration successful" msgstr "Compte créé avec succès" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Créer un compte" @@ -2964,7 +2972,7 @@ msgstr "Vous ne pouvez pas reprendre votre propre avis." msgid "You already repeated that notice." msgstr "Vous avez déjà repris cet avis." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Repris" @@ -4126,16 +4134,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Il vous est interdit de poster des avis sur ce site." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problème lors de l’enregistrement de l’avis." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Erreur de base de donnée en insérant la réponse :%s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4190,128 +4198,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Page sans nom" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Navigation primaire du site" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Accueil" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Profil personnel et flux des amis" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Compte" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Modifier votre courriel, avatar, mot de passe, profil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Connecter" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Se connecter aux services" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Modifier la configuration du site" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Inviter" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Inviter des amis et collègues à vous rejoindre dans %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Fermeture de session" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Fermer la session" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Créer un compte" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Ouvrir une session" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Aide" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "À l’aide !" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Rechercher" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Rechercher des personnes ou du texte" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Notice du site" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Vues locales" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Avis de la page" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Navigation secondaire du site" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "À propos" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "CGU" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Confidentialité" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Source" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contact" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Insigne" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Licence du logiciel StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4320,12 +4328,12 @@ msgstr "" "**%%site.name%%** est un service de microblogging qui vous est proposé par " "[%%site.broughtby%%](%%site.broughtbyurl%%)." -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** est un service de micro-blogging." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4336,31 +4344,31 @@ msgstr "" "version %s, disponible sous la licence [GNU Affero General Public License] " "(http://www.fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Licence du contenu du site" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Tous " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "licence." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Pagination" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Après" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Avant" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Un problème est survenu avec votre jeton de session." @@ -4412,6 +4420,16 @@ msgstr "Avis sur lesquels cette pièce jointe apparaît." msgid "Tags for this attachment" msgstr "Marques de cette pièce jointe" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Modification du mot de passe" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Modification du mot de passe" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Résultats de la commande" @@ -5215,7 +5233,7 @@ msgstr "" "pour démarrer des conversations avec d’autres utilisateurs. Ceux-ci peuvent " "vous envoyer des messages destinés à vous seul(e)." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "de" @@ -5283,69 +5301,73 @@ msgstr "Envoyer un message direct" msgid "To" msgstr "À" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Caractères restants" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Envoyer un avis" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Quoi de neuf, %s ?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "Attacher" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Attacher un fichier" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "Partager votre localisation" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u° %2$u' %3$u\" %4$s %5$u° %6$u' %7$u\" %8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "N" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "S" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "E" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "O" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "chez" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "dans le contexte" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Repris par" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Répondre à cet avis" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Répondre" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Avis repris" @@ -5475,9 +5497,8 @@ msgid "Popular" msgstr "Populaires" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Reprendre cet avis" +msgstr "Reprendre cet avis ?" #: lib/repeatform.php:132 msgid "Repeat this notice" diff --git a/locale/ga/LC_MESSAGES/statusnet.po b/locale/ga/LC_MESSAGES/statusnet.po index 5c2bd404b..00e8c6b89 100644 --- a/locale/ga/LC_MESSAGES/statusnet.po +++ b/locale/ga/LC_MESSAGES/statusnet.po @@ -8,12 +8,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:54+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:28+0000\n" "Language-Team: Irish\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ga\n" "X-Message-Group: out-statusnet\n" @@ -195,11 +195,11 @@ msgstr "Non se puido actualizar o usuario." msgid "You cannot block yourself!" msgstr "Non se puido actualizar o usuario." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Bloqueo de usuario fallido." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Desbloqueo de usuario fallido." @@ -320,31 +320,31 @@ msgid "Could not find target user." msgstr "Non se puido atopar ningún estado" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "O alcume debe ter só letras minúsculas e números, e sen espazos." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "O alcume xa está sendo empregado por outro usuario. Tenta con outro." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Non é un alcume válido." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "A páxina persoal semella que non é unha URL válida." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "O nome completo é demasiado longo (max 255 car)." @@ -355,7 +355,7 @@ msgid "Description is too long (max %d chars)." msgstr "O teu Bio é demasiado longo (max 140 car.)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "A localización é demasiado longa (max 255 car.)." @@ -475,7 +475,7 @@ msgstr "" msgid "Not found" msgstr "Non atopado" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -607,7 +607,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 #, fuzzy msgid "Delete" msgstr "eliminar" @@ -621,13 +621,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -704,7 +704,7 @@ msgstr "Si" msgid "Block this user" msgstr "Bloquear usuario" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Erro ao gardar información de bloqueo." @@ -781,7 +781,7 @@ msgstr "Esa dirección xa foi confirmada." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Non se puido actualizar o usuario." @@ -846,7 +846,7 @@ msgstr "Estas seguro que queres eliminar este chÃo?" msgid "Do not delete this notice" msgstr "Non se pode eliminar este chÃos." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 #, fuzzy msgid "Delete this notice" msgstr "Eliminar chÃo" @@ -995,7 +995,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1512,7 +1512,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1605,7 +1605,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "O usuario bloqueoute." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Acounteceu un erro borrando o bloqueo." @@ -1789,7 +1789,7 @@ msgstr "Mensaxe persoal" msgid "Optionally add a personal message to the invitation." msgstr "Opcionalmente engadir unha mensaxe persoal á invitación." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Enviar" @@ -1916,7 +1916,7 @@ msgstr "Usuario ou contrasinal incorrectos." msgid "Error setting user. You are probably not authorized." msgstr "Non está autorizado." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Inicio de sesión" @@ -2031,7 +2031,7 @@ msgstr "Non hai mensaxes de texto!" msgid "Direct message to %s sent" msgstr "Mensaxe directo a %s enviado" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Erro de Ajax" @@ -2039,7 +2039,7 @@ msgstr "Erro de Ajax" msgid "New notice" msgstr "Novo chÃo" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "ChÃo publicado" @@ -2482,73 +2482,82 @@ msgstr "Localización" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "¿Onde estas, coma \"Cidade, Provincia, PaÃs\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Tags" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Etiquetas para o teu usuario (letras, números, -, ., e _), separados por " "coma ou espazo" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Linguaxe" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Linguaxe preferida" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Fuso Horario" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "En que fuso horario estas normalmente?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Suscribirse automáticamente a calquera que se suscriba a min (o mellor para " "non humáns)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "O teu Bio é demasiado longo (max 140 car.)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Fuso Horario non seleccionado" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "A Linguaxe é demasiado longa (max 50 car.)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Etiqueta inválida: '%s'" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Non se puido actualizar o usuario para autosuscrición." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Non se puideron gardar as etiquetas." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Non se puido gardar o perfil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Non se puideron gardar as etiquetas." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Configuracións gardadas." @@ -2653,7 +2662,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2792,7 +2801,7 @@ msgstr "Acounteceu un erro co código de confirmación." msgid "Registration successful" msgstr "Xa estas rexistrado!!" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Rexistrar" @@ -2993,7 +3002,7 @@ msgstr "Non podes rexistrarte se non estas de acordo coa licenza." msgid "You already repeated that notice." msgstr "Xa bloqueaches a este usuario." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Crear" @@ -4154,16 +4163,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Tes restrinxido o envio de chÃos neste sitio." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Aconteceu un erro ó gardar o chÃo." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Erro ó inserir a contestación na BD: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4222,139 +4231,139 @@ msgstr "%s (%s)" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Persoal" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "Sobre" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Change your email, avatar, password, profile" msgstr "Cambiar contrasinal" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Conectar" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Non se pode redireccionar ao servidor: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Navegación de subscricións" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Invitar" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, fuzzy, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" "Emprega este formulario para invitar ós teus amigos e colegas a empregar " "este servizo." -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Sair" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "Crear nova conta" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Axuda" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "Axuda" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Buscar" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "Novo chÃo" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "Novo chÃo" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "Navegación de subscricións" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Sobre" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "Preguntas frecuentes" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privacidade" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Fonte" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contacto" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4363,12 +4372,12 @@ msgstr "" "**%%site.name%%** é un servizo de microbloguexo que che proporciona [%%site." "broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** é un servizo de microbloguexo." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4379,35 +4388,35 @@ msgstr "" "%s, dispoñible baixo licenza [GNU Affero General Public License](http://www." "fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "Atopar no contido dos chÃos" -#: lib/action.php:799 +#: lib/action.php:800 #, fuzzy msgid "All " msgstr "Todos" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 #, fuzzy msgid "After" msgstr "« Despois" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "Antes »" -#: lib/action.php:1163 +#: lib/action.php:1164 #, fuzzy msgid "There was a problem with your session token." msgstr "Houbo un problema co teu token de sesión. Tentao de novo, anda..." @@ -4468,6 +4477,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Contrasinal gardada." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Contrasinal gardada." + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Resultados do comando" @@ -5254,7 +5273,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr " dende " @@ -5320,76 +5339,80 @@ msgstr "Eliminar chÃo" msgid "To" msgstr "A" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "6 ou máis caracteres" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "Dar un toque" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "¿Que pasa, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "No" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "Sen contido!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Crear" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 #, fuzzy msgid "Reply to this notice" msgstr "Non se pode eliminar este chÃos." -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 #, fuzzy msgid "Reply" msgstr "contestar" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "ChÃo publicado" diff --git a/locale/he/LC_MESSAGES/statusnet.po b/locale/he/LC_MESSAGES/statusnet.po index 8c037aea0..97c2dc823 100644 --- a/locale/he/LC_MESSAGES/statusnet.po +++ b/locale/he/LC_MESSAGES/statusnet.po @@ -7,12 +7,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:42:57+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:31+0000\n" "Language-Team: Hebrew\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: he\n" "X-Message-Group: out-statusnet\n" @@ -192,11 +192,11 @@ msgstr "עידכון המשתמש × ×›×©×œ." msgid "You cannot block yourself!" msgstr "עידכון המשתמש × ×›×©×œ." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -311,31 +311,31 @@ msgid "Could not find target user." msgstr "עידכון המשתמש × ×›×©×œ." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "×›×™× ×•×™ יכול להכיל רק ×ותיות ×× ×’×œ×™×•×ª ×§×˜× ×•×ª ומספרי×, ×•×œ×œ× ×¨×•×•×—×™×." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "×›×™× ×•×™ ×–×” כבר תפוס. × ×¡×” ×›×™× ×•×™ ×חר." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "×©× ×ž×©×ª×ž×© ×œ× ×—×•×§×™." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "ל×תר הבית יש כתובת ×œ× ×—×•×§×™×ª." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "×”×©× ×”×ž×œ× ×רוך מידי (מותרות 255 ×ותיות בלבד)" @@ -346,7 +346,7 @@ msgid "Description is too long (max %d chars)." msgstr "הביוגרפיה ×רוכה מידי (לכל היותר 140 ×ותיות)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "×©× ×”×ž×™×§×•× ×רוך מידי (מותר עד 255 ×ותיות)." @@ -467,7 +467,7 @@ msgstr "×–×” ×רוך מידי. ×ורך מירבי להודעה ×”×•× 140 ×ו msgid "Not found" msgstr "×œ× × ×ž×¦×" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -600,7 +600,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 #, fuzzy msgid "Delete" msgstr "מחק" @@ -614,13 +614,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -695,7 +695,7 @@ msgstr "כן" msgid "Block this user" msgstr "×ין משתמש ×›×–×”." -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -771,7 +771,7 @@ msgstr "כתובת זו כבר ×ושרה." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "עידכון המשתמש × ×›×©×œ." @@ -833,7 +833,7 @@ msgstr "" msgid "Do not delete this notice" msgstr "×ין הודעה כזו." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "" @@ -980,7 +980,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1488,7 +1488,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1581,7 +1581,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "למשתמש ×ין פרופיל." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "שגי××” בשמירת המשתמש." @@ -1760,7 +1760,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "שלח" @@ -1860,7 +1860,7 @@ msgstr "×©× ×ž×©×ª×ž×© ×ו סיסמה ×œ× × ×›×•× ×™×." msgid "Error setting user. You are probably not authorized." msgstr "×œ× ×ž×•×¨×©×”." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "×”×™×›× ×¡" @@ -1970,7 +1970,7 @@ msgstr "הודעה חדשה" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1978,7 +1978,7 @@ msgstr "" msgid "New notice" msgstr "הודעה חדשה" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 #, fuzzy msgid "Notice posted" msgstr "הודעות" @@ -2417,70 +2417,79 @@ msgstr "מיקו×" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "מיקומך, למשל \"עיר, ×ž×“×™× ×” ×ו מחוז, ×רץ\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "שפה" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "הביוגרפיה ×רוכה מידי (לכל היותר 140 ×ותיות)" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "כתובת ×תר הבית '%s' ××™× ×” חוקית" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "שמירת הפרופיל × ×›×©×œ×”." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "שמירת הפרופיל × ×›×©×œ×”." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "שמירת הפרופיל × ×›×©×œ×”." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ההגדרות × ×©×ž×¨×•." @@ -2577,7 +2586,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2714,7 +2723,7 @@ msgstr "שגי××” ב×ישור הקוד." msgid "Registration successful" msgstr "" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "הירש×" @@ -2887,7 +2896,7 @@ msgstr "×œ× × ×™×ª×Ÿ ×œ×”×™×¨×©× ×œ×œ× ×”×¡×›×ž×” לרשיון" msgid "You already repeated that notice." msgstr "כבר × ×›× ×¡×ª למערכת!" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "צור" @@ -4010,16 +4019,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "בעיה בשמירת ההודעה." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "שגי×ת מסד × ×ª×•× ×™× ×‘×”×›× ×¡×ª התגובה: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4078,136 +4087,136 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "בית" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "×ודות" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "התחבר" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "× ×›×©×œ×” ×”×”×¤× ×™×” לשרת: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "הרשמות" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "צ×" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "צור חשבון חדש" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "עזרה" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "עזרה" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "חיפוש" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "הודעה חדשה" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "הודעה חדשה" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "הרשמות" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "×ודות" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "רשימת ש×לות × ×¤×•×¦×•×ª" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "פרטיות" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "מקור" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "צור קשר" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4216,12 +4225,12 @@ msgstr "" "**%%site.name%%** ×”×•× ×©×¨×•×ª ביקרובלוג ×”× ×™×ª×Ÿ על ידי [%%site.broughtby%%](%%" "site.broughtbyurl%%)." -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** ×”×•× ×©×¨×•×ª ביקרובלוג." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4232,34 +4241,34 @@ msgstr "" "s, המופצת תחת רשיון [GNU Affero General Public License](http://www.fsf.org/" "licensing/licenses/agpl-3.0.html)" -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "הודעה חדשה" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 #, fuzzy msgid "After" msgstr "<< ×חרי" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "×œ×¤× ×™ >>" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4314,6 +4323,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "הסיסמה × ×©×ž×¨×”." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "הסיסמה × ×©×ž×¨×”." + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4999,7 +5018,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "" @@ -5064,75 +5083,79 @@ msgstr "" msgid "To" msgstr "×ל" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "לפחות 6 ×ותיות" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "הודעה חדשה" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "מה המצב %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "ל×" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "×ין תוכן!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "צור" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 #, fuzzy msgid "Reply" msgstr "הגב" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "הודעות" diff --git a/locale/hsb/LC_MESSAGES/statusnet.po b/locale/hsb/LC_MESSAGES/statusnet.po index 5b6d082a9..e12652087 100644 --- a/locale/hsb/LC_MESSAGES/statusnet.po +++ b/locale/hsb/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:00+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:35+0000\n" "Language-Team: Dutch\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: hsb\n" "X-Message-Group: out-statusnet\n" @@ -188,11 +188,11 @@ msgstr "Design njeda so aktualizować." msgid "You cannot block yourself!" msgstr "NjemóžeÅ¡ so samoho blokować." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -304,31 +304,31 @@ msgid "Could not find target user." msgstr "" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "PÅ™imjeno so hižo wužiwa. Spytaj druhe." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Žane pÅ‚aćiwe pÅ™imjeno." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Startowa strona njeje pÅ‚aćiwy URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "DospoÅ‚ne mjeno je pÅ™edoÅ‚ho (maks. 255 znamjeÅ¡kow)." @@ -339,7 +339,7 @@ msgid "Description is too long (max %d chars)." msgstr "Wopisanje je pÅ™edoÅ‚ho (maks. %d znamjeÅ¡kow)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "MÄ›stno je pÅ™edoÅ‚ho (maks. 255 znamjeÅ¡kow)." @@ -454,7 +454,7 @@ msgstr "To je pÅ™edoÅ‚ho. Maksimalna wulkosć zdźělenki je %d znamjeÅ¡kow." msgid "Not found" msgstr "Njenamakany" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -584,7 +584,7 @@ msgid "Preview" msgstr "PÅ™ehlad" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "ZniÄić" @@ -597,13 +597,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -673,7 +673,7 @@ msgstr "Haj" msgid "Block this user" msgstr "Tutoho wužiwarja blokować" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -745,7 +745,7 @@ msgstr "Tuta adresa bu hižo wobkrućena." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "" @@ -805,7 +805,7 @@ msgstr "ChceÅ¡ woprawdźe tutu zdźělenku wuÅ¡mórnyć?" msgid "Do not delete this notice" msgstr "Tutu zdźělenku njewuÅ¡mórnyć" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Tutu zdźělenku wuÅ¡mórnyć" @@ -940,7 +940,7 @@ msgstr "Na standard wróćo stajić" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1424,7 +1424,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "Lisćina wužiwarjow w tutej skupinje." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Administrator" @@ -1511,7 +1511,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "" @@ -1682,7 +1682,7 @@ msgstr "Wosobinska powÄ›sć" msgid "Optionally add a personal message to the invitation." msgstr "Wosobinsku powÄ›sć po dobrozdaću pÅ™eproÅ¡enju pÅ™idać." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "PósÅ‚ać" @@ -1778,7 +1778,7 @@ msgstr "WopaÄne wužiwarske mjeno abo hesÅ‚o." msgid "Error setting user. You are probably not authorized." msgstr "Zmylk pÅ™i nastajenju wužiwarja. Snano njejsy awtorizowany." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "PÅ™izjewić" @@ -1885,7 +1885,7 @@ msgstr "PowÄ›sć pósÅ‚ana" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Zmylk Ajax" @@ -1893,7 +1893,7 @@ msgstr "Zmylk Ajax" msgid "New notice" msgstr "Nowa zdźělenka" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Zdźělenka wotpósÅ‚ana" @@ -2310,69 +2310,77 @@ msgstr "MÄ›stno" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "RÄ›Ä" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Preferowana rÄ›Ä" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "ÄŒasowe pasmo" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Biografija je pÅ™edoÅ‚ha (maks. %d znamjeÅ¡kow)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "ÄŒasowe pasmo njeje wubrane." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Mjeno rÄ›Äe je pÅ™edoÅ‚he (maks. 50 znamjeÅ¡kow)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Nastajenja mÄ›stna njedachu so skÅ‚adować." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "" -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "" -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Nastajenja skÅ‚adowane." @@ -2465,7 +2473,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2602,7 +2610,7 @@ msgstr "Wodaj, njepÅ‚aćiwy pÅ™eproÅ¡enski kod." msgid "Registration successful" msgstr "Registrowanje wuspěšne" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registrować" @@ -2766,7 +2774,7 @@ msgstr "NjemóžeÅ¡ swójsku zdźělenku wospjetować." msgid "You already repeated that notice." msgstr "Sy tutu zdźělenku hižo wospjetowaÅ‚." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Wospjetowany" @@ -3836,16 +3844,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -3900,140 +3908,140 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Strona bjez titula" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Konto" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Zwjazać" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "PÅ™eprosyć" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Konto zaÅ‚ožić" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Pomoc" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Pomhaj!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Pytać" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Za ludźimi abo tekstom pytać" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Wo" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "Huste praÅ¡enja" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Priwatnosć" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "ŽórÅ‚o" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Kontakt" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." "broughtby%%](%%site.broughtbyurl%%). " msgstr "" -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4041,31 +4049,31 @@ msgid "" "org/licensing/licenses/agpl-3.0.html)." msgstr "" -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4117,6 +4125,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "HesÅ‚o zmÄ›njene" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "HesÅ‚o zmÄ›njene" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4785,7 +4803,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "wot" @@ -4849,69 +4867,73 @@ msgstr "Direktnu zdźělenku pósÅ‚ać" msgid "To" msgstr "Komu" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "K dispoziciji stejace znamjeÅ¡ka" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Zdźělenku pósÅ‚ać" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "PÅ™ipowÄ›snyć" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Dataju pÅ™ipowÄ›snyć" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "S" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "J" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "W" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "Z" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Wospjetowany wot" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Na tutu zdźělenku wotmoÅ‚wić" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "WotmoÅ‚wić" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Zdźělenka wospjetowana" @@ -5041,9 +5063,8 @@ msgid "Popular" msgstr "Woblubowany" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Tutu zdźělenku wospjetować" +msgstr "Tutu zdźělenku wospjetować?" #: lib/repeatform.php:132 msgid "Repeat this notice" diff --git a/locale/ia/LC_MESSAGES/statusnet.po b/locale/ia/LC_MESSAGES/statusnet.po index 15ff0db7c..adb2fb764 100644 --- a/locale/ia/LC_MESSAGES/statusnet.po +++ b/locale/ia/LC_MESSAGES/statusnet.po @@ -8,12 +8,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:03+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:39+0000\n" "Language-Team: Interlingua\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ia\n" "X-Message-Group: out-statusnet\n" @@ -198,11 +198,11 @@ msgstr "Non poteva actualisar le apparentia." msgid "You cannot block yourself!" msgstr "Tu non pote blocar te mesme!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Le blocada del usator ha fallite." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Le disblocada del usator ha fallite." @@ -314,31 +314,31 @@ msgid "Could not find target user." msgstr "Non poteva trovar le usator de destination." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Le pseudonymo pote solmente haber minusculas e numeros, sin spatios." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Pseudonymo ja in uso. Proba un altere." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Non un pseudonymo valide." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Le pagina personal non es un URL valide." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Le nomine complete es troppo longe (max. 255 characteres)." @@ -349,7 +349,7 @@ msgid "Description is too long (max %d chars)." msgstr "Description es troppo longe (max %d charachteres)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Loco es troppo longe (max. 255 characteres)." @@ -465,7 +465,7 @@ msgstr "" msgid "Not found" msgstr "Non trovate" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -597,7 +597,7 @@ msgid "Preview" msgstr "Previsualisation" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Deler" @@ -610,13 +610,13 @@ msgid "Crop" msgstr "Taliar" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -689,7 +689,7 @@ msgstr "Si" msgid "Block this user" msgstr "Blocar iste usator" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Falleva de salveguardar le information del blocada." @@ -761,7 +761,7 @@ msgstr "Iste adresse ha ja essite confirmate." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Non poteva actualisar usator." @@ -823,7 +823,7 @@ msgstr "Es tu secur de voler deler iste nota?" msgid "Do not delete this notice" msgstr "Non deler iste nota" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Deler iste nota" @@ -961,7 +961,7 @@ msgstr "Revenir al predefinitiones" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1461,7 +1461,7 @@ msgstr "Membros del gruppo %s, pagina %d" msgid "A list of the users in this group." msgstr "Un lista de usatores in iste gruppo." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Administrator" @@ -1559,7 +1559,7 @@ msgstr "Solmente un administrator pote disblocar membros de un gruppo." msgid "User is not blocked from group." msgstr "Le usator non es blocate del gruppo." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Error de remover le blocada." @@ -1746,7 +1746,7 @@ msgstr "Message personal" msgid "Optionally add a personal message to the invitation." msgstr "Si tu vole, adde un message personal al invitation." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Inviar" @@ -1869,7 +1869,7 @@ msgid "Error setting user. You are probably not authorized." msgstr "" "Error de acceder al conto de usator. Tu probabilemente non es autorisate." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Aperir session" @@ -1984,7 +1984,7 @@ msgstr "Message inviate" msgid "Direct message to %s sent" msgstr "Message directe a %s inviate" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Error de Ajax" @@ -1992,7 +1992,7 @@ msgstr "Error de Ajax" msgid "New notice" msgstr "Nove nota" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Nota publicate" @@ -2299,35 +2299,35 @@ msgstr "Directorio al fundos" #: actions/pathsadminpanel.php:293 msgid "SSL" -msgstr "" +msgstr "SSL" #: actions/pathsadminpanel.php:296 actions/siteadminpanel.php:346 msgid "Never" -msgstr "" +msgstr "Nunquam" #: actions/pathsadminpanel.php:297 msgid "Sometimes" -msgstr "" +msgstr "Alcun vices" #: actions/pathsadminpanel.php:298 msgid "Always" -msgstr "" +msgstr "Sempre" #: actions/pathsadminpanel.php:302 msgid "Use SSL" -msgstr "" +msgstr "Usar SSL" #: actions/pathsadminpanel.php:303 msgid "When to use SSL" -msgstr "" +msgstr "Quando usar SSL" #: actions/pathsadminpanel.php:308 msgid "SSL Server" -msgstr "" +msgstr "Servitor SSL" #: actions/pathsadminpanel.php:309 msgid "Server to direct SSL requests to" -msgstr "" +msgstr "Servitor verso le qual diriger le requestas SSL" #: actions/pathsadminpanel.php:325 msgid "Save paths" @@ -2424,72 +2424,80 @@ msgstr "Loco" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Ubi tu es, como \"Citate, Stato (o Region), Pais\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "Divulgar mi loco actual quando io publica notas" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Etiquettas" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Etiquettas pro te (litteras, numeros, -, ., e _), separate per commas o " "spatios" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Lingua" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Lingua preferite" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Fuso horari" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "In que fuso horari es tu normalmente?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Subscriber me automaticamente a qui se subscribe a me (utile pro non-humanos)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Bio es troppo longe (max %d chars)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Fuso horari non seligite." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Lingua es troppo longe (max 50 chars)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Etiquetta invalide: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Non poteva actualisar usator pro autosubscription." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Non poteva salveguardar le preferentias de loco." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Non poteva salveguardar profilo." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Non poteva salveguardar etiquettas." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Preferentias confirmate." @@ -2595,7 +2603,7 @@ msgstr "" "Proque non [registrar un conto](%%action.register%%) e devenir le prime a " "publicar un?" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Etiquettario" @@ -2735,7 +2743,7 @@ msgstr "Pardono, le codice de invitation es invalide." msgid "Registration successful" msgstr "Registration succedite" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Crear un conto" @@ -2927,7 +2935,7 @@ msgstr "Tu non pote repeter tu proprie nota." msgid "You already repeated that notice." msgstr "Tu ha ja repetite iste nota." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Repetite" @@ -3376,184 +3384,190 @@ msgstr "Servitor" #: actions/siteadminpanel.php:306 msgid "Site's server hostname." -msgstr "" +msgstr "Nomine de host del servitor del sito." #: actions/siteadminpanel.php:310 msgid "Fancy URLs" -msgstr "" +msgstr "URLs de luxo" #: actions/siteadminpanel.php:312 msgid "Use fancy (more readable and memorable) URLs?" -msgstr "" +msgstr "Usar URLs de luxo (plus legibile e memorabile)?" #: actions/siteadminpanel.php:318 msgid "Access" -msgstr "" +msgstr "Accesso" #: actions/siteadminpanel.php:321 msgid "Private" -msgstr "" +msgstr "Private" #: actions/siteadminpanel.php:323 msgid "Prohibit anonymous users (not logged in) from viewing site?" -msgstr "" +msgstr "Prohiber al usatores anonyme (sin session aperte) de vider le sito?" #: actions/siteadminpanel.php:327 msgid "Invite only" -msgstr "" +msgstr "Solmente per invitation" #: actions/siteadminpanel.php:329 msgid "Make registration invitation only." -msgstr "" +msgstr "Permitter le registration solmente al invitatos." #: actions/siteadminpanel.php:333 msgid "Closed" -msgstr "" +msgstr "Claudite" #: actions/siteadminpanel.php:335 msgid "Disable new registrations." -msgstr "" +msgstr "Disactivar le creation de nove contos." #: actions/siteadminpanel.php:341 msgid "Snapshots" -msgstr "" +msgstr "Instantaneos" #: actions/siteadminpanel.php:344 msgid "Randomly during Web hit" -msgstr "" +msgstr "Aleatorimente durante un accesso web" #: actions/siteadminpanel.php:345 msgid "In a scheduled job" -msgstr "" +msgstr "In un processo planificate" #: actions/siteadminpanel.php:347 msgid "Data snapshots" -msgstr "" +msgstr "Instantaneos de datos" #: actions/siteadminpanel.php:348 msgid "When to send statistical data to status.net servers" -msgstr "" +msgstr "Quando inviar datos statistic al servitores de status.net" #: actions/siteadminpanel.php:353 msgid "Frequency" -msgstr "" +msgstr "Frequentia" #: actions/siteadminpanel.php:354 msgid "Snapshots will be sent once every N web hits" -msgstr "" +msgstr "Un instantaneo essera inviate a cata N accessos web" #: actions/siteadminpanel.php:359 msgid "Report URL" -msgstr "" +msgstr "URL pro reporto" #: actions/siteadminpanel.php:360 msgid "Snapshots will be sent to this URL" -msgstr "" +msgstr "Le instantaneos essera inviate a iste URL" #: actions/siteadminpanel.php:367 msgid "Limits" -msgstr "" +msgstr "Limites" #: actions/siteadminpanel.php:370 msgid "Text limit" -msgstr "" +msgstr "Limite de texto" #: actions/siteadminpanel.php:370 msgid "Maximum number of characters for notices." -msgstr "" +msgstr "Numero maxime de characteres pro notas." #: actions/siteadminpanel.php:374 msgid "Dupe limit" -msgstr "" +msgstr "Limite de duplicatos" #: actions/siteadminpanel.php:374 msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +"Quante tempore (in secundas) le usatores debe attender ante de poter " +"publicar le mesme cosa de novo." #: actions/siteadminpanel.php:388 actions/useradminpanel.php:313 msgid "Save site settings" -msgstr "" +msgstr "Salveguardar configurationes del sito" #: actions/smssettings.php:58 msgid "SMS Settings" -msgstr "" +msgstr "Configuration SMS" #: actions/smssettings.php:69 #, php-format msgid "You can receive SMS messages through email from %%site.name%%." -msgstr "" +msgstr "Tu pote reciper messages SMS per e-mail ab %%site.name%%." #: actions/smssettings.php:91 msgid "SMS is not available." -msgstr "" +msgstr "SMS non es disponibile." #: actions/smssettings.php:112 msgid "Current confirmed SMS-enabled phone number." -msgstr "" +msgstr "Numero de telephono actual e confirmate con servicio SMS." #: actions/smssettings.php:123 msgid "Awaiting confirmation on this phone number." -msgstr "" +msgstr "Iste numero de telephono attende confirmation." #: actions/smssettings.php:130 msgid "Confirmation code" -msgstr "" +msgstr "Codice de confirmation" #: actions/smssettings.php:131 msgid "Enter the code you received on your phone." -msgstr "" +msgstr "Entra le codice que tu ha recipite in tu telephono." #: actions/smssettings.php:138 msgid "SMS Phone number" -msgstr "" +msgstr "Numero de telephono pro SMS" #: actions/smssettings.php:140 msgid "Phone number, no punctuation or spaces, with area code" -msgstr "" +msgstr "Numero de telephono, sin punctuation o spatios, con indicativo" #: actions/smssettings.php:174 msgid "" "Send me notices through SMS; I understand I may incur exorbitant charges " "from my carrier." msgstr "" +"Invia me notas per SMS; io comprende que io pote incurrer exorbitante costos " +"de mi operator." #: actions/smssettings.php:306 msgid "No phone number." -msgstr "" +msgstr "Nulle numero de telephono." #: actions/smssettings.php:311 msgid "No carrier selected." -msgstr "" +msgstr "Nulle operator seligite." #: actions/smssettings.php:318 msgid "That is already your phone number." -msgstr "" +msgstr "Isto es ja tu numero de telephono." #: actions/smssettings.php:321 msgid "That phone number already belongs to another user." -msgstr "" +msgstr "Iste numero de telephono pertine ja a un altere usator." #: actions/smssettings.php:347 msgid "" "A confirmation code was sent to the phone number you added. Check your phone " "for the code and instructions on how to use it." msgstr "" +"Un codice de confirmation ha essite inviate al numero de telephono que tu ha " +"addite. Vide in tu telephono le codice e le instructiones super como usar lo." #: actions/smssettings.php:374 msgid "That is the wrong confirmation number." -msgstr "" +msgstr "Iste codice de confirmation es incorrecte." #: actions/smssettings.php:405 msgid "That is not your phone number." -msgstr "" +msgstr "Isto non es tu numero de telephono." #: actions/smssettings.php:465 msgid "Mobile carrier" -msgstr "" +msgstr "Operator de telephonia mobile" #: actions/smssettings.php:469 msgid "Select a carrier" -msgstr "" +msgstr "Selige un operator" #: actions/smssettings.php:476 #, php-format @@ -3561,51 +3575,56 @@ msgid "" "Mobile carrier for your phone. If you know a carrier that accepts SMS over " "email but isn't listed here, send email to let us know at %s." msgstr "" +"Le operator de telephonia mobile de tu telephono. Si tu cognosce un operator " +"que accepta SMS via e-mail ma non es listate hic, invia e-mail pro informar " +"nos a %s." #: actions/smssettings.php:498 msgid "No code entered" -msgstr "" +msgstr "Nulle codice entrate" #: actions/subedit.php:70 msgid "You are not subscribed to that profile." -msgstr "" +msgstr "Tu non es subscribite a iste profilo." #: actions/subedit.php:83 msgid "Could not save subscription." -msgstr "" +msgstr "Non poteva salveguardar le subscription." #: actions/subscribe.php:55 msgid "Not a local user." -msgstr "" +msgstr "Le usator non es local." #: actions/subscribe.php:69 msgid "Subscribed" -msgstr "" +msgstr "Subscribite" #: actions/subscribers.php:50 #, php-format msgid "%s subscribers" -msgstr "" +msgstr "Subscriptores a %s" #: actions/subscribers.php:52 #, php-format msgid "%s subscribers, page %d" -msgstr "" +msgstr "Subscriptores a %s, pagina %d" #: actions/subscribers.php:63 msgid "These are the people who listen to your notices." -msgstr "" +msgstr "Iste personas seque tu notas." #: actions/subscribers.php:67 #, php-format msgid "These are the people who listen to %s's notices." -msgstr "" +msgstr "Iste personas seque le notas de %s." #: actions/subscribers.php:108 msgid "" "You have no subscribers. Try subscribing to people you know and they might " "return the favor" msgstr "" +"Tu non ha subscriptores. Tenta subscriber te a personas que tu cognosce e " +"illes poterea retornar te le favor." #: actions/subscribers.php:110 #, php-format @@ -4032,16 +4051,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4096,140 +4115,140 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." "broughtby%%](%%site.broughtbyurl%%). " msgstr "" -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4237,31 +4256,31 @@ msgid "" "org/licensing/licenses/agpl-3.0.html)." msgstr "" -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4313,6 +4332,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Cambio del contrasigno" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Cambio del contrasigno" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4973,7 +5002,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "" @@ -5037,69 +5066,73 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Repetite per" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Nota delite." diff --git a/locale/is/LC_MESSAGES/statusnet.po b/locale/is/LC_MESSAGES/statusnet.po index 0423d2ecb..3092d2e99 100644 --- a/locale/is/LC_MESSAGES/statusnet.po +++ b/locale/is/LC_MESSAGES/statusnet.po @@ -8,12 +8,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:06+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:42+0000\n" "Language-Team: Icelandic\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: is\n" "X-Message-Group: out-statusnet\n" @@ -194,11 +194,11 @@ msgstr "Gat ekki uppfært hóp." msgid "You cannot block yourself!" msgstr "Gat ekki uppfært notanda." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Mistókst að loka á notanda." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Mistókst að opna fyrir notanda." @@ -312,31 +312,31 @@ msgid "Could not find target user." msgstr "" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Stuttnefni geta bara verið lágstafir og tölustafir en engin bil." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Stuttnefni nú þegar à notkun. Prófaðu eitthvað annað." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Ekki tækt stuttnefni." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "HeimasÃða er ekki gild vefslóð." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Fullt nafn er of langt (à mesta lagi 255 stafir)." @@ -347,7 +347,7 @@ msgid "Description is too long (max %d chars)." msgstr "Lýsing er of löng (à mesta lagi 140 tákn)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Staðsetning er of löng (à mesta lagi 255 stafir)." @@ -467,7 +467,7 @@ msgstr "Þetta er of langt. Hámarkslengd babls er 140 tákn." msgid "Not found" msgstr "Fannst ekki" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -597,7 +597,7 @@ msgid "Preview" msgstr "Forsýn" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Eyða" @@ -610,13 +610,13 @@ msgid "Crop" msgstr "Skera af" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -689,7 +689,7 @@ msgstr "Já" msgid "Block this user" msgstr "Loka á þennan notanda" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Mistókst að vista upplýsingar um notendalokun" @@ -762,7 +762,7 @@ msgstr "Þetta tölvupóstfang hefur nú þegar verið staðfest." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Gat ekki uppfært notanda." @@ -823,7 +823,7 @@ msgstr "Ertu viss um að þú viljir eyða þessu babli?" msgid "Do not delete this notice" msgstr "" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Eyða þessu babli" @@ -967,7 +967,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1463,7 +1463,7 @@ msgstr "Hópmeðlimir %s, sÃða %d" msgid "A list of the users in this group." msgstr "Listi yfir notendur à þessum hóp." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Stjórnandi" @@ -1550,7 +1550,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Vill kom upp við að aflétta notendalokun." @@ -1738,7 +1738,7 @@ msgstr "Persónuleg skilaboð" msgid "Optionally add a personal message to the invitation." msgstr "Bættu persónulegum skilaboðum við boðskortið ef þú vilt." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Senda" @@ -1862,7 +1862,7 @@ msgstr "Rangt notendanafn eða lykilorð." msgid "Error setting user. You are probably not authorized." msgstr "Engin heimild." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Innskráning" @@ -1978,7 +1978,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "Bein skilaboð send til %s" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax villa" @@ -1986,7 +1986,7 @@ msgstr "Ajax villa" msgid "New notice" msgstr "Nýtt babl" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Babl sent inn" @@ -2425,73 +2425,82 @@ msgstr "Staðsetning" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Staðsetning þÃn, eins og \"borg, sýsla, land\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Merki" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Merki fyrir þig (bókstafir, tölustafir, -, ., og _), aðskilin með kommu eða " "bili" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Tungumál" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Tungumál (ákjósanlegt)" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "TÃmabelti" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "à hvaða tÃmabelti eru à rauninni?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Gerast sjálfkrafa áskrifandi að hverjum þeim sem gerist áskrifandi að þér " "(best fyrir ómannlega notendur)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "Lýsingin er of löng (à mesta lagi 140 tákn)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "TÃmabelti ekki valið." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Tungumál er of langt (à mesta lagi 50 stafir)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Ógilt merki: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Gat ekki uppfært notanda à sjálfvirka áskrift." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Gat ekki vistað merki." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Gat ekki vistað persónulega sÃðu." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Gat ekki vistað merki." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Stillingar vistaðar." @@ -2584,7 +2593,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Merkjaský" @@ -2724,7 +2733,7 @@ msgstr "" msgid "Registration successful" msgstr "Nýskráning tókst" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Nýskrá" @@ -2919,7 +2928,7 @@ msgstr "Þú getur ekki nýskráð þig nema þú samþykkir leyfið." msgid "You already repeated that notice." msgstr "Þú hefur nú þegar lokað á þennan notanda." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "à sviðsljósinu" @@ -4042,16 +4051,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Það hefur verið lagt bann við babli frá þér á þessari sÃðu." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Vandamál komu upp við að vista babl." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Gagnagrunnsvilla við innsetningu svars: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4106,132 +4115,132 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Ónafngreind sÃða" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Stikl aðalsÃðu" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Heim" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Persónuleg sÃða og vinarás" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Aðgangur" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" "Breyttu tölvupóstinum þÃnum, einkennismyndinni þinni, lykilorðinu þÃnu, " "persónulegu sÃðunni þinni" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Tengjast" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Gat ekki framsent til vefþjóns: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Stikl aðalsÃðu" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Bjóða" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Bjóða vinum og vandamönnum að slást à hópinn á %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Útskráning" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Skrá þig út af sÃðunni" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Búa til aðgang" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Skrá þig inn á sÃðuna" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Hjálp" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Hjálp!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Leita" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Leita að fólki eða texta" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Babl vefsÃðunnar" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Staðbundin sýn" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Babl sÃðunnar" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Stikl undirsÃðu" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Um" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "Spurt og svarað" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Friðhelgi" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Frumþula" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Tengiliður" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Hugbúnaðarleyfi StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4240,12 +4249,12 @@ msgstr "" "**%%site.name%%** er örbloggsþjónusta à boði [%%site.broughtby%%](%%site." "broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** er örbloggsþjónusta." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4256,32 +4265,32 @@ msgstr "" "sem er gefinn út undir [GNU Affero almenningsleyfinu](http://www.fsf.org/" "licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "Hugbúnaðarleyfi StatusNet" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Allt " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "leyfi." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Uppröðun" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Eftir" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Ãður" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Það komu upp vandamál varðandi setutókann þinn." @@ -4339,6 +4348,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Lykilorðabreyting" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Lykilorðabreyting" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Niðurstöður skipunar" @@ -5022,7 +5041,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr "frá" @@ -5088,71 +5107,75 @@ msgstr "Senda bein skilaboð" msgid "To" msgstr "Til" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Leyfileg tákn" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Senda babl" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Hvað er að frétta %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "Nei" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "à sviðsljósinu" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Svara þessu babli" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Svara" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Babl sent inn" diff --git a/locale/it/LC_MESSAGES/statusnet.po b/locale/it/LC_MESSAGES/statusnet.po index f3d6d3c57..5c025c4c0 100644 --- a/locale/it/LC_MESSAGES/statusnet.po +++ b/locale/it/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:10+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:47+0000\n" "Language-Team: Italian\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: it\n" "X-Message-Group: out-statusnet\n" @@ -199,11 +199,11 @@ msgstr "Impossibile aggiornare l'aspetto." msgid "You cannot block yourself!" msgstr "Non puoi bloccarti!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Blocco dell'utente non riuscito." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Sblocco dell'utente non riuscito." @@ -315,7 +315,7 @@ msgid "Could not find target user." msgstr "Impossibile trovare l'utente destinazione." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -323,25 +323,25 @@ msgstr "" "spazi." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Soprannome già in uso. Prova con un altro." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Non è un soprannome valido." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "L'indirizzo della pagina web non è valido." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Nome troppo lungo (max 255 caratteri)." @@ -352,7 +352,7 @@ msgid "Description is too long (max %d chars)." msgstr "La descrizione è troppo lunga (max %d caratteri)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Ubicazione troppo lunga (max 255 caratteri)." @@ -467,7 +467,7 @@ msgstr "Troppo lungo. Lunghezza massima %d caratteri." msgid "Not found" msgstr "Non trovato" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -598,7 +598,7 @@ msgid "Preview" msgstr "Anteprima" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Elimina" @@ -611,13 +611,13 @@ msgid "Crop" msgstr "Ritaglia" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -691,7 +691,7 @@ msgstr "Sì" msgid "Block this user" msgstr "Blocca questo utente" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Salvataggio delle informazioni per il blocco non riuscito." @@ -763,7 +763,7 @@ msgstr "Quell'indirizzo è già stato confermato." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Impossibile aggiornare l'utente." @@ -825,7 +825,7 @@ msgstr "Vuoi eliminare questo messaggio?" msgid "Do not delete this notice" msgstr "Non eliminare il messaggio" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Elimina questo messaggio" @@ -964,7 +964,7 @@ msgstr "Reimposta i valori predefiniti" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1467,7 +1467,7 @@ msgstr "Membri del gruppo %s, pagina %d" msgid "A list of the users in this group." msgstr "Un elenco degli utenti in questo gruppo." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Amministra" @@ -1565,7 +1565,7 @@ msgstr "Solo gli amministratori possono sbloccare i membri del gruppo." msgid "User is not blocked from group." msgstr "L'utente non è bloccato dal gruppo." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Errore nel rimuovere il blocco." @@ -1751,7 +1751,7 @@ msgstr "Messaggio personale" msgid "Optionally add a personal message to the invitation." msgstr "Puoi aggiungere un messaggio personale agli inviti." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Invia" @@ -1873,7 +1873,7 @@ msgstr "Nome utente o password non corretto." msgid "Error setting user. You are probably not authorized." msgstr "Errore nell'impostare l'utente. Forse non hai l'autorizzazione." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Accedi" @@ -1985,7 +1985,7 @@ msgstr "Messaggio inviato" msgid "Direct message to %s sent" msgstr "Messaggio diretto a %s inviato" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Errore di Ajax" @@ -1993,7 +1993,7 @@ msgstr "Errore di Ajax" msgid "New notice" msgstr "Nuovo messaggio" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Messaggio inviato" @@ -2427,72 +2427,81 @@ msgstr "Ubicazione" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Dove ti trovi, tipo \"città , regione, stato\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Etichette" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Le tue etichette (lettere, numeri, -, . e _), separate da virgole o spazi" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Lingua" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Lingua preferita" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Fuso orario" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "In che fuso orario risiedi solitamente?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Abbonami automaticamente a chi si abbona ai miei messaggi (utile per i non-" "umani)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "La biografia è troppo lunga (max %d caratteri)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Fuso orario non selezionato" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "La lingua è troppo lunga (max 50 caratteri)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Etichetta non valida: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Impossibile aggiornare l'utente per auto-abbonarsi." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Impossibile salvare le etichette." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Impossibile salvare il profilo." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Impossibile salvare le etichette." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Impostazioni salvate." @@ -2595,7 +2604,7 @@ msgid "" "one!" msgstr "Perché non [crei un accout](%%action.register%%) e ne scrivi uno tu!" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Insieme delle etichette" @@ -2736,7 +2745,7 @@ msgstr "Codice di invito non valido." msgid "Registration successful" msgstr "Registrazione riuscita" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registra" @@ -2928,7 +2937,7 @@ msgstr "Non puoi ripetere i tuoi stessi messaggi." msgid "You already repeated that notice." msgstr "Hai già ripetuto quel messaggio." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Ripetuti" @@ -4079,16 +4088,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Ti è proibito inviare messaggi su questo sito." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problema nel salvare il messaggio." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Errore del DB nell'inserire la risposta: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4143,128 +4152,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Pagina senza nome" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Esplorazione sito primaria" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Home" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Profilo personale e attività degli amici" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Account" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Modifica la tua email, immagine, password o il tuo profilo" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Connetti" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Connettiti con altri servizi" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Modifica la configurazione del sito" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Invita" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Invita amici e colleghi a seguirti su %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Esci" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Termina la tua sessione sul sito" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Crea un account" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Accedi al sito" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Aiuto" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Aiutami!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Cerca" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Cerca persone o del testo" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Messaggio del sito" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Viste locali" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Pagina messaggio" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Esplorazione secondaria del sito" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Informazioni" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "TOS" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privacy" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Sorgenti" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contatti" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Badge" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Licenza del software StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4273,12 +4282,12 @@ msgstr "" "**%%site.name%%** è un servizio di microblog offerto da [%%site.broughtby%%]" "(%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** è un servizio di microblog. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4289,31 +4298,31 @@ msgstr "" "s, disponibile nei termini della licenza [GNU Affero General Public License]" "(http://www.fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Licenza del contenuto del sito" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Tutti " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "licenza." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginazione" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Successivi" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Precedenti" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Si è verificato un problema con il tuo token di sessione." @@ -4365,6 +4374,16 @@ msgstr "Messaggi in cui appare questo allegato" msgid "Tags for this attachment" msgstr "Etichette per questo allegato" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Modifica password" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Modifica password" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Risultati comando" @@ -5162,7 +5181,7 @@ msgstr "" "iniziare una conversazione con altri utenti. Altre persone possono mandare " "messaggi riservati solamente a te." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "via" @@ -5229,69 +5248,73 @@ msgstr "Invia un messaggio diretto" msgid "To" msgstr "A" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Caratteri disponibili" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Invia un messaggio" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Cosa succede, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "Allega" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Allega un file" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "N" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "S" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "E" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "O" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "presso" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "nel contesto" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Ripetuto da" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Rispondi a questo messaggio" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Rispondi" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Messaggio ripetuto" diff --git a/locale/ja/LC_MESSAGES/statusnet.po b/locale/ja/LC_MESSAGES/statusnet.po index 51f0b9a34..9e4fe43c7 100644 --- a/locale/ja/LC_MESSAGES/statusnet.po +++ b/locale/ja/LC_MESSAGES/statusnet.po @@ -2,6 +2,7 @@ # # Author@translatewiki.net: Aotake # Author@translatewiki.net: Fryed-peach +# Author@translatewiki.net: Sonoda # Author@translatewiki.net: Whym # -- # This file is distributed under the same license as the StatusNet package. @@ -10,12 +11,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:13+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:50+0000\n" "Language-Team: Japanese\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ja\n" "X-Message-Group: out-statusnet\n" @@ -83,7 +84,7 @@ msgstr "%s ã®å‹äººã®ãƒ•ã‚£ãƒ¼ãƒ‰ (Atom)" #, php-format msgid "" "This is the timeline for %s and friends but no one has posted anything yet." -msgstr "ã“れ㯠%s ã¨å‹äººã®äºˆå®šè¡¨ã§ã™ã€‚ã¾ã 誰も投稿ã—ã¦ã„ã¾ã›ã‚“。" +msgstr "ã“れ㯠%s ã¨å‹äººã®ã‚¿ã‚¤ãƒ ラインã§ã™ã€‚ã¾ã 誰も投稿ã—ã¦ã„ã¾ã›ã‚“。" #: actions/all.php:132 #, php-format @@ -91,8 +92,8 @@ msgid "" "Try subscribing to more people, [join a group](%%action.groups%%) or post " "something yourself." msgstr "" -"ã‚‚ã£ã¨å¤šãã®äººã¨ã¤ãªãŒã£ã¦ã¿ã¾ã—ょã†ã€‚[グループã«å‚åŠ ](%%action.groups%%) ã—" -"ã¦ã¿ãŸã‚Šã€ä½•ã‹æŠ•ç¨¿ã—ã¦ã¿ã¾ã—ょã†ã€‚" +"ã‚‚ã£ã¨å¤šãã®äººã‚’フォãƒãƒ¼ã—ã¦ã¿ã¾ã—ょã†ã€‚[グループã«å‚åŠ ](%%action.groups%%) " +"ã—ã¦ã¿ãŸã‚Šã€ä½•ã‹æŠ•ç¨¿ã—ã¦ã¿ã¾ã—ょã†ã€‚" #: actions/all.php:134 #, php-format @@ -198,33 +199,33 @@ msgstr "デザインを更新ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" msgid "You cannot block yourself!" msgstr "自分自身をブãƒãƒƒã‚¯ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ï¼" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "利用者ã®ãƒ–ãƒãƒƒã‚¯ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "利用者ã®ãƒ–ãƒãƒƒã‚¯è§£é™¤ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" #: actions/apidirectmessage.php:89 #, php-format msgid "Direct messages from %s" -msgstr "" +msgstr "%s ã‹ã‚‰ã®ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" #: actions/apidirectmessage.php:93 #, php-format msgid "All the direct messages sent from %s" -msgstr "" +msgstr "%s ã‹ã‚‰é€ã‚‰ã‚ŒãŸå…¨ã¦ã®ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" #: actions/apidirectmessage.php:101 #, php-format msgid "Direct messages to %s" -msgstr "" +msgstr "%s ã¸ã®ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" #: actions/apidirectmessage.php:105 #, php-format msgid "All the direct messages sent to %s" -msgstr "" +msgstr "%s ã¸é€ã£ãŸå…¨ã¦ã®ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" #: actions/apidirectmessage.php:156 actions/apifavoritecreate.php:99 #: actions/apifavoritedestroy.php:100 actions/apifriendshipscreate.php:100 @@ -248,12 +249,12 @@ msgstr "API メソッドãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ï¼" #: actions/apidirectmessagenew.php:126 msgid "No message text!" -msgstr "ãŠçŸ¥ã‚‰ã›ã®æœ¬æ–‡ãŒã‚ã‚Šã¾ã›ã‚“ï¼" +msgstr "メッセージã®æœ¬æ–‡ãŒã‚ã‚Šã¾ã›ã‚“ï¼" #: actions/apidirectmessagenew.php:135 actions/newmessage.php:150 #, php-format msgid "That's too long. Max message size is %d chars." -msgstr "é•·ã™ãŽã¾ã™ã€‚ãŠçŸ¥ã‚‰ã›ã¯æœ€å¤§ %d å—ã¾ã§ã§ã™ã€‚" +msgstr "é•·ã™ãŽã¾ã™ã€‚メッセージã¯æœ€å¤§ %d å—ã¾ã§ã§ã™ã€‚" #: actions/apidirectmessagenew.php:146 msgid "Recipient user not found." @@ -261,28 +262,28 @@ msgstr "å—ã‘å–り手ã®åˆ©ç”¨è€…ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。" #: actions/apidirectmessagenew.php:150 msgid "Can't send direct messages to users who aren't your friend." -msgstr "" +msgstr "å‹äººã§ãªã„利用者ã«ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。" #: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109 #: actions/apistatusesdestroy.php:113 msgid "No status found with that ID." -msgstr "" +msgstr "ãã®ï¼©ï¼¤ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。" #: actions/apifavoritecreate.php:119 msgid "This status is already a favorite!" -msgstr "" +msgstr "ã“ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ã™ã§ã«ãŠæ°—ã«å…¥ã‚Šã§ã™!" #: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176 msgid "Could not create favorite." -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Šã‚’作æˆã§ãã¾ã›ã‚“。" #: actions/apifavoritedestroy.php:122 msgid "That status is not a favorite!" -msgstr "" +msgstr "ãã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ãŠæ°—ã«å…¥ã‚Šã§ã¯ã‚ã‚Šã¾ã›ã‚“!" #: actions/apifavoritedestroy.php:134 actions/disfavor.php:87 msgid "Could not delete favorite." -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Šã‚’å–り消ã™ã“ã¨ãŒã§ãã¾ã›ã‚“。" #: actions/apifriendshipscreate.php:109 msgid "Could not follow user: User not found." @@ -304,20 +305,18 @@ msgstr "自分自身をフォãƒãƒ¼åœæ¢ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ï¼" #: actions/apifriendshipsexists.php:94 msgid "Two user ids or screen_names must be supplied." -msgstr "" +msgstr "ãµãŸã¤ã®ï¼©ï¼¤ã‹ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ãƒãƒ¼ãƒ ãŒå¿…è¦ã§ã™ã€‚" #: actions/apifriendshipsshow.php:135 -#, fuzzy msgid "Could not determine source user." -msgstr "ユーザを更新ã§ãã¾ã›ã‚“" +msgstr "ソースユーザーを決定ã§ãã¾ã›ã‚“。" #: actions/apifriendshipsshow.php:143 -#, fuzzy msgid "Could not find target user." -msgstr "ユーザを更新ã§ãã¾ã›ã‚“" +msgstr "ターゲットユーザーを見ã¤ã‘られã¾ã›ã‚“。" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -325,36 +324,36 @@ msgstr "" "ã§ãã¾ã›ã‚“。" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "ãã®ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã¯æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ä»–ã®ã‚‚ã®ã‚’試ã—ã¦ã¿ã¦ä¸‹ã•ã„。" #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "有効ãªãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "ホームページã®URLãŒä¸é©åˆ‡ã§ã™ã€‚" #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "フルãƒãƒ¼ãƒ ãŒé•·ã™ãŽã¾ã™ã€‚(255å—ã¾ã§ï¼‰" #: actions/apigroupcreate.php:213 -#, fuzzy, php-format +#, php-format msgid "Description is too long (max %d chars)." -msgstr "ãƒã‚¤ã‚ªã‚°ãƒ©ãƒ•ã‚£ãŒé•·ã™ãŽã¾ã™ã€‚(最長140å—)" +msgstr "記述ãŒé•·ã™ãŽã¾ã™ã€‚(最長140å—)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "å ´æ‰€ãŒé•·ã™ãŽã¾ã™ã€‚(255å—ã¾ã§ï¼‰" @@ -363,65 +362,62 @@ msgstr "å ´æ‰€ãŒé•·ã™ãŽã¾ã™ã€‚(255å—ã¾ã§ï¼‰" #: actions/newgroup.php:159 #, php-format msgid "Too many aliases! Maximum %d." -msgstr "" +msgstr "別åãŒå¤šã™ãŽã¾ã™! 最大 %d。" #: actions/apigroupcreate.php:264 actions/editgroup.php:224 #: actions/newgroup.php:168 -#, fuzzy, php-format +#, php-format msgid "Invalid alias: \"%s\"" -msgstr "ä¸æ£ãªãƒ›ãƒ¼ãƒ ページ '%s'" +msgstr "ä¸æ£ãªåˆ¥å: \"%s\"" #: actions/apigroupcreate.php:273 actions/editgroup.php:228 #: actions/newgroup.php:172 -#, fuzzy, php-format +#, php-format msgid "Alias \"%s\" already in use. Try another one." -msgstr "ãã®ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã¯æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ä»–ã®ã‚‚ã®ã‚’試ã—ã¦ã¿ã¦ä¸‹ã•ã„。" +msgstr "別å \"%s\" ã¯æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ä»–ã®ã‚‚ã®ã‚’試ã—ã¦ã¿ã¦ä¸‹ã•ã„。" #: actions/apigroupcreate.php:286 actions/editgroup.php:234 #: actions/newgroup.php:178 msgid "Alias can't be the same as nickname." -msgstr "" +msgstr "別åã¯ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã¨åŒã˜ã§ã¯ã„ã‘ã¾ã›ã‚“。" #: actions/apigroupismember.php:95 actions/apigroupjoin.php:104 #: actions/apigroupleave.php:104 actions/apigroupmembership.php:91 #: actions/apigroupshow.php:90 actions/apitimelinegroup.php:91 -#, fuzzy msgid "Group not found!" -msgstr "API メソッドãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ï¼" +msgstr "グループãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!" #: actions/apigroupjoin.php:110 -#, fuzzy msgid "You are already a member of that group." -msgstr "æ—¢ã«ãƒã‚°ã‚¤ãƒ³æ¸ˆã¿ã§ã™ã€‚" +msgstr "ã™ã§ã«ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã™ã€‚" #: actions/apigroupjoin.php:119 actions/joingroup.php:95 lib/command.php:221 msgid "You have been blocked from that group by the admin." -msgstr "" +msgstr "管ç†è€…ã«ã‚ˆã£ã¦ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ãƒ–ãƒãƒƒã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚" #: actions/apigroupjoin.php:138 -#, fuzzy, php-format +#, php-format msgid "Could not join user %s to group %s." -msgstr "サーãƒã¸ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã§ãã¾ã›ã‚“ : %s" +msgstr "利用者 %s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %s ã«å‚åŠ ã§ãã¾ã›ã‚“。" #: actions/apigroupleave.php:114 -#, fuzzy msgid "You are not a member of this group." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/apigroupleave.php:124 -#, fuzzy, php-format +#, php-format msgid "Could not remove user %s to group %s." -msgstr "OpenIDを作æˆã§ãã¾ã›ã‚“ : %s" +msgstr "利用者 %s をグループ %s ã‹ã‚‰å‰Šé™¤ã§ãã¾ã›ã‚“。" #: actions/apigrouplist.php:95 -#, fuzzy, php-format +#, php-format msgid "%s's groups" -msgstr "%s グループ" +msgstr "%s ã®ã‚°ãƒ«ãƒ¼ãƒ—" #: actions/apigrouplist.php:103 #, php-format msgid "Groups %s is a member of on %s." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "グループ %s 㯠%s 上ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã™ã€‚" #: actions/apigrouplistall.php:90 actions/usergroups.php:62 #, php-format @@ -429,71 +425,67 @@ msgid "%s groups" msgstr "%s グループ" #: actions/apigrouplistall.php:94 -#, fuzzy, php-format +#, php-format msgid "groups on %s" -msgstr "ã“ã®ã‚µã‚¤ãƒˆä¸Šã®ã‚°ãƒ«ãƒ¼ãƒ—を検索ã™ã‚‹" +msgstr "%s 上ã®ã‚°ãƒ«ãƒ¼ãƒ—" #: actions/apistatusesdestroy.php:107 msgid "This method requires a POST or DELETE." -msgstr "" +msgstr "ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã¯ POST ã‹ DELETE ãŒå¿…è¦ã§ã™ã€‚" #: actions/apistatusesdestroy.php:130 msgid "You may not delete another user's status." -msgstr "" +msgstr "ä»–ã®åˆ©ç”¨è€…ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’消ã™ã“ã¨ã¯ã§ãã¾ã›ã‚“。" #: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72 #: actions/deletenotice.php:52 actions/shownotice.php:92 msgid "No such notice." -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ãã®ã‚ˆã†ãªã¤ã¶ã‚„ãã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/apistatusesretweet.php:83 -#, fuzzy msgid "Cannot repeat your own notice." -msgstr "ライセンスã«åŒæ„é ‚ã‘ãªã„å ´åˆã¯ç™»éŒ²ã§ãã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã›ã¾ã›ã‚“。" #: actions/apistatusesretweet.php:91 -#, fuzzy msgid "Already repeated that notice." -msgstr "ã“ã®é€šçŸ¥ã‚’削除" +msgstr "ã™ã§ã«ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¦ã„ã¾ã™ã€‚" #: actions/apistatusesshow.php:138 -#, fuzzy msgid "Status deleted." -msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒæ›´æ–°ã•ã‚Œã¾ã—ãŸã€‚" +msgstr "ステータスを削除ã—ã¾ã—ãŸã€‚" #: actions/apistatusesshow.php:144 msgid "No status with that ID found." -msgstr "" +msgstr "ãã®ï¼©ï¼¤ã§ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/apistatusesupdate.php:157 actions/newnotice.php:155 #: scripts/maildaemon.php:71 -#, fuzzy, php-format +#, php-format msgid "That's too long. Max notice size is %d chars." -msgstr "é•·ã™ãŽã¾ã™ã€‚通知ã¯æœ€å¤§ 140 å—ã¾ã§ã§ã™ã€‚" +msgstr "é•·ã™ãŽã¾ã™ã€‚ã¤ã¶ã‚„ãã¯æœ€å¤§ 140 å—ã¾ã§ã§ã™ã€‚" #: actions/apistatusesupdate.php:198 msgid "Not found" -msgstr "" +msgstr "ã¿ã¤ã‹ã‚Šã¾ã›ã‚“" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." -msgstr "" +msgstr "ã¤ã¶ã‚„ã㯠URL ã‚’å«ã‚ã¦æœ€å¤§ %d å—ã¾ã§ã§ã™ã€‚" #: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261 -#, fuzzy msgid "Unsupported format." -msgstr "サãƒãƒ¼ãƒˆå¤–ã®ç”»åƒå½¢å¼ã§ã™ã€‚" +msgstr "サãƒãƒ¼ãƒˆå¤–ã®å½¢å¼ã§ã™ã€‚" #: actions/apitimelinefavorites.php:108 #, php-format msgid "%s / Favorites from %s" -msgstr "" +msgstr "%s / %s ã‹ã‚‰ã®ãŠæ°—ã«å…¥ã‚Š" #: actions/apitimelinefavorites.php:120 #, php-format msgid "%s updates favorited by %s / %s." -msgstr "" +msgstr "%s 㯠%s ã§ãŠæ°—ã«å…¥ã‚Šã‚’æ›´æ–°ã—ã¾ã—㟠/ %s。" #: actions/apitimelinegroup.php:109 actions/apitimelineuser.php:118 #: actions/grouprss.php:131 actions/userrss.php:90 @@ -505,47 +497,47 @@ msgstr "%s ã®ã‚¿ã‚¤ãƒ ライン" #: actions/userrss.php:92 #, php-format msgid "Updates from %1$s on %2$s!" -msgstr "" +msgstr "%1$s ã‹ã‚‰ %2$s 上ã®æ›´æ–°ã‚’ã—ã¾ã—ãŸ!" #: actions/apitimelinementions.php:117 -#, fuzzy, php-format +#, php-format msgid "%1$s / Updates mentioning %2$s" -msgstr "%1$ ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ %2$s" +msgstr "%1$s / %2$s ã«ã¤ã„ã¦æ›´æ–°" #: actions/apitimelinementions.php:127 #, php-format msgid "%1$s updates that reply to updates from %2$s / %3$s." -msgstr "" +msgstr "%2$s ã‹ã‚‰ã‚¢ãƒƒãƒ—デートã«ç”ãˆã‚‹ %1$s アップデート" #: actions/apitimelinepublic.php:107 actions/publicrss.php:103 #, php-format msgid "%s public timeline" -msgstr "%s ã®å…¬é–‹ã‚¿ã‚¤ãƒ ライン" +msgstr "%s ã®ãƒ‘ブリックタイムライン" #: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #, php-format msgid "%s updates from everyone!" -msgstr "" +msgstr "皆ã‹ã‚‰ã® %s アップデート!" #: actions/apitimelineretweetedbyme.php:112 #, php-format msgid "Repeated by %s" -msgstr "" +msgstr "%s ã«ã‚ˆã‚‹ç¹°ã‚Šè¿”ã—" #: actions/apitimelineretweetedtome.php:111 -#, fuzzy, php-format +#, php-format msgid "Repeated to %s" msgstr "%s ã¸ã®è¿”ä¿¡" #: actions/apitimelineretweetsofme.php:112 -#, fuzzy, php-format +#, php-format msgid "Repeats of %s" -msgstr "%s ã¸ã®è¿”ä¿¡" +msgstr "%s ã®è¿”ä¿¡" #: actions/apitimelinetag.php:102 actions/tag.php:66 #, php-format msgid "Notices tagged with %s" -msgstr "" +msgstr "%s ã¨ã‚¿ã‚°ä»˜ã‘ã•ã‚ŒãŸã¤ã¶ã‚„ã" #: actions/apitimelinetag.php:108 actions/tagrss.php:64 #, php-format @@ -557,9 +549,8 @@ msgid "Not found." msgstr "見ã¤ã‹ã‚Šã¾ã›ã‚“。" #: actions/attachment.php:73 -#, fuzzy msgid "No such attachment." -msgstr "ãã®ã‚ˆã†ãªãƒ‰ã‚ュメントã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ãã®ã‚ˆã†ãªæ·»ä»˜ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/avatarbynickname.php:59 actions/grouprss.php:91 #: actions/leavegroup.php:76 @@ -588,7 +579,7 @@ msgstr "自分ã®ã‚¢ãƒã‚¿ãƒ¼ã‚’アップãƒãƒ¼ãƒ‰ã§ãã¾ã™ã€‚最大サイズ #: actions/grouplogo.php:178 actions/remotesubscribe.php:191 #: actions/userauthorization.php:72 actions/userrss.php:103 msgid "User without matching profile" -msgstr "" +msgstr "åˆã£ã¦ã„るプãƒãƒ•ã‚£ãƒ¼ãƒ«ã®ãªã„利用者" #: actions/avatarsettings.php:119 actions/avatarsettings.php:197 #: actions/grouplogo.php:251 @@ -598,15 +589,15 @@ msgstr "ã‚¢ãƒã‚¿ãƒ¼è¨å®š" #: actions/avatarsettings.php:127 actions/avatarsettings.php:205 #: actions/grouplogo.php:199 actions/grouplogo.php:259 msgid "Original" -msgstr "" +msgstr "オリジナル" #: actions/avatarsettings.php:142 actions/avatarsettings.php:217 #: actions/grouplogo.php:210 actions/grouplogo.php:271 msgid "Preview" -msgstr "" +msgstr "プレビュー" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "削除" @@ -616,23 +607,23 @@ msgstr "アップãƒãƒ¼ãƒ‰" #: actions/avatarsettings.php:231 actions/grouplogo.php:286 msgid "Crop" -msgstr "" +msgstr "切りå–ã‚Š" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 #: actions/unsubscribe.php:69 actions/userauthorization.php:52 #: lib/designsettings.php:294 msgid "There was a problem with your session token. Try again, please." -msgstr "" +msgstr "ã‚ãªãŸã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ãƒˆãƒ¼ã‚¯ãƒ³ã«å•é¡ŒãŒã‚ã‚Šã¾ã—ãŸã€‚å†åº¦ãŠè©¦ã—ãã ã•ã„。" #: actions/avatarsettings.php:281 actions/designadminpanel.php:103 #: actions/emailsettings.php:256 actions/grouplogo.php:319 @@ -643,11 +634,11 @@ msgstr "予期ã›ã¬ãƒ•ã‚©ãƒ¼ãƒ é€ä¿¡ã§ã™ã€‚" #: actions/avatarsettings.php:328 msgid "Pick a square area of the image to be your avatar" -msgstr "" +msgstr "ã‚ãªãŸã®ã‚¢ãƒã‚¿ãƒ¼ã¨ãªã‚‹ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’æ£æ–¹å½¢ã§æŒ‡å®š" #: actions/avatarsettings.php:343 actions/grouplogo.php:377 msgid "Lost our file data." -msgstr "" +msgstr "ファイルデータを紛失ã—ã¾ã—ãŸã€‚" #: actions/avatarsettings.php:366 msgid "Avatar updated." @@ -658,34 +649,34 @@ msgid "Failed updating avatar." msgstr "ã‚¢ãƒã‚¿ãƒ¼ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" #: actions/avatarsettings.php:393 -#, fuzzy msgid "Avatar deleted." -msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒæ›´æ–°ã•ã‚Œã¾ã—ãŸã€‚" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒå‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚" #: actions/block.php:69 -#, fuzzy msgid "You already blocked that user." -msgstr "æ—¢ã«ãƒã‚°ã‚¤ãƒ³æ¸ˆã¿ã§ã™ã€‚" +msgstr "ãã®åˆ©ç”¨è€…ã¯ã™ã§ã«ãƒ–ãƒãƒƒã‚¯æ¸ˆã¿ã§ã™ã€‚" #: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160 -#, fuzzy msgid "Block user" -msgstr "ãã®ã‚ˆã†ãªãƒ¦ãƒ¼ã‚¶ã¯ã„ã¾ã›ã‚“。" +msgstr "ブãƒãƒƒã‚¯åˆ©ç”¨è€…" #: actions/block.php:130 +#, fuzzy msgid "" "Are you sure you want to block this user? Afterwards, they will be " "unsubscribed from you, unable to subscribe to you in the future, and you " "will not be notified of any @-replies from them." msgstr "" +"ã‚ãªãŸã¯ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブãƒãƒƒã‚¯ã—ãŸã„ã®ã‚’確信ã—ã¦ã„ã¾ã™ã‹? ãã®å¾Œã€ãれらã¯ã‚ãª" +"ãŸã‹ã‚‰ãƒ•ã‚©ãƒãƒ¼ã‚’外ã•ã‚Œã‚‹ã§ã—ょã†ã€å°†æ¥ã€ã‚ãªãŸã«ãƒ•ã‚©ãƒãƒ¼ã§ããªã„ã§ã€ã‚ãªãŸã¯" +"ã©ã‚“㪠@-返信 ã«ã¤ã„ã¦ã‚‚ãれらã‹ã‚‰é€šçŸ¥ã•ã‚Œãªã„ã§ã—ょã†ã€‚" #: actions/block.php:143 actions/deletenotice.php:145 #: actions/deleteuser.php:147 actions/groupblock.php:178 msgid "No" -msgstr "" +msgstr "No" #: actions/block.php:143 actions/deleteuser.php:147 -#, fuzzy msgid "Do not block this user" msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブãƒãƒƒã‚¯ã™ã‚‹" @@ -693,21 +684,20 @@ msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブãƒãƒƒã‚¯ã™ã‚‹" #: actions/deleteuser.php:148 actions/groupblock.php:179 #: lib/repeatform.php:132 msgid "Yes" -msgstr "" +msgstr "Yes" #: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 msgid "Block this user" msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブãƒãƒƒã‚¯ã™ã‚‹" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." -msgstr "" +msgstr "ブãƒãƒƒã‚¯æƒ…å ±ã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" #: actions/blockedfromgroup.php:73 actions/editgroup.php:84 #: actions/groupdesignsettings.php:84 actions/grouplogo.php:86 #: actions/groupmembers.php:76 actions/joingroup.php:76 #: actions/showgroup.php:121 -#, fuzzy msgid "No nickname" msgstr "ニックãƒãƒ¼ãƒ ãŒã‚ã‚Šã¾ã›ã‚“。" @@ -715,28 +705,26 @@ msgstr "ニックãƒãƒ¼ãƒ ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/groupbyid.php:83 actions/groupdesignsettings.php:97 #: actions/grouplogo.php:99 actions/groupmembers.php:83 #: actions/joingroup.php:83 actions/showgroup.php:137 -#, fuzzy msgid "No such group" -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ãã®ã‚ˆã†ãªã‚°ãƒ«ãƒ¼ãƒ—ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/blockedfromgroup.php:90 -#, fuzzy, php-format +#, php-format msgid "%s blocked profiles" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "%s ブãƒãƒƒã‚¯ã•ã‚ŒãŸãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«" #: actions/blockedfromgroup.php:93 -#, fuzzy, php-format +#, php-format msgid "%s blocked profiles, page %d" -msgstr "%s & ã¨ã‚‚ã ã¡" +msgstr "%s ブãƒãƒƒã‚¯ã•ã‚ŒãŸãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã€ãƒšãƒ¼ã‚¸ %d" #: actions/blockedfromgroup.php:108 msgid "A list of the users blocked from joining this group." -msgstr "" +msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã¸ã®å‚åŠ ã‚’ãƒ–ãƒãƒƒã‚¯ã•ã‚ŒãŸåˆ©ç”¨è€…ã®ãƒªã‚¹ãƒˆã€‚" #: actions/blockedfromgroup.php:281 -#, fuzzy msgid "Unblock user from group" -msgstr "ユーザã®ã‚¢ãƒ³ãƒ–ãƒãƒƒã‚¯ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" +msgstr "グループã‹ã‚‰ã®ã‚¢ãƒ³ãƒ–ãƒãƒƒã‚¯åˆ©ç”¨è€…" #: actions/blockedfromgroup.php:313 lib/unblockform.php:69 msgid "Unblock" @@ -748,7 +736,7 @@ msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブãƒãƒƒã‚¯ã™ã‚‹" #: actions/bookmarklet.php:50 msgid "Post to " -msgstr "" +msgstr "投稿" #: actions/confirmaddress.php:75 msgid "No confirmation code." @@ -774,7 +762,7 @@ msgstr "ãã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ—¢ã«æ‰¿èªã•ã‚Œã¦ã„ã¾ã™ã€‚" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "ユーザを更新ã§ãã¾ã›ã‚“" @@ -794,14 +782,13 @@ msgid "The address \"%s\" has been confirmed for your account." msgstr "アドレス \"%s\" ã¯ã‚ãªãŸã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¨ã—ã¦æ‰¿èªã•ã‚Œã¦ã„ã¾ã™ã€‚" #: actions/conversation.php:99 -#, fuzzy msgid "Conversation" -msgstr "確èªã‚³ãƒ¼ãƒ‰" +msgstr "会話" #: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87 #: lib/profileaction.php:216 lib/searchgroupnav.php:82 msgid "Notices" -msgstr "通知" +msgstr "ã¤ã¶ã‚„ã" #: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62 #: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69 @@ -815,55 +802,55 @@ msgstr "ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã›ã‚“。" #: actions/deletenotice.php:71 msgid "Can't delete this notice." -msgstr "ã“ã®é€šçŸ¥ã‚’削除ã§ãã¾ã›ã‚“。" +msgstr "ã“ã®ã¤ã¶ã‚„ãを削除ã§ãã¾ã›ã‚“。" #: actions/deletenotice.php:103 msgid "" "You are about to permanently delete a notice. Once this is done, it cannot " "be undone." msgstr "" +"ã‚ãªãŸã¯æ°¸ä¹…ã«ã¤ã¶ã‚„ãを削除ã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚ ã“ã‚ŒãŒå®Œäº†ã™ã‚‹ã¨ãれを元ã«æˆ»" +"ã™ã“ã¨ã¯ã§ãã¾ã›ã‚“。" #: actions/deletenotice.php:109 actions/deletenotice.php:141 msgid "Delete notice" -msgstr "" +msgstr "ã¤ã¶ã‚„ã削除" #: actions/deletenotice.php:144 msgid "Are you sure you want to delete this notice?" -msgstr "本当ã«ã“ã®é€šçŸ¥ã‚’削除ã—ã¾ã™ã‹ï¼Ÿ" +msgstr "本当ã«ã“ã®ã¤ã¶ã‚„ãを削除ã—ã¾ã™ã‹ï¼Ÿ" #: actions/deletenotice.php:145 -#, fuzzy msgid "Do not delete this notice" -msgstr "ã“ã®é€šçŸ¥ã‚’削除ã§ãã¾ã›ã‚“。" +msgstr "ã“ã®ã¤ã¶ã‚„ãを削除ã§ãã¾ã›ã‚“。" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" -msgstr "ã“ã®é€šçŸ¥ã‚’削除" +msgstr "ã“ã®ã¤ã¶ã‚„ãを削除" #: actions/deletenotice.php:157 msgid "There was a problem with your session token. Try again, please." -msgstr "" +msgstr "ã‚ãªãŸã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ãƒˆãƒ¼ã‚¯ãƒ³ã«å•é¡ŒãŒã‚ã‚Šã¾ã—ãŸã€‚å†åº¦ãŠè©¦ã—ãã ã•ã„。" #: actions/deleteuser.php:67 -#, fuzzy msgid "You cannot delete users." -msgstr "ユーザを更新ã§ãã¾ã›ã‚“" +msgstr "利用者を削除ã§ãã¾ã›ã‚“" #: actions/deleteuser.php:74 -#, fuzzy msgid "You can only delete local users." -msgstr "ãƒãƒ¼ã‚«ãƒ«ã‚µãƒ–スクリプションを使用å¯èƒ½ã§ã™ï¼" +msgstr "ãƒãƒ¼ã‚«ãƒ«åˆ©ç”¨è€…ã®ã¿å‰Šé™¤ã§ãã¾ã™ã€‚" #: actions/deleteuser.php:110 actions/deleteuser.php:133 -#, fuzzy msgid "Delete user" -msgstr "削除" +msgstr "利用者削除" #: actions/deleteuser.php:135 msgid "" "Are you sure you want to delete this user? This will clear all data about " "the user from the database, without a backup." msgstr "" +"ã‚ãªãŸã¯æœ¬å½“ã«ã“ã®åˆ©ç”¨è€…を削除ã—ãŸã„ã§ã™ã‹? ã“ã‚Œã¯ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ãªã—ã§ãƒ‡ãƒ¼ã‚¿" +"ベースã‹ã‚‰åˆ©ç”¨è€…ã«é–¢ã™ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’クリアã—ã¾ã™ã€‚" #: actions/deleteuser.php:148 lib/deleteuserform.php:77 msgid "Delete this user" @@ -872,116 +859,110 @@ msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’削除" #: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124 #: lib/adminpanelaction.php:302 lib/groupnav.php:119 msgid "Design" -msgstr "" +msgstr "デザイン" #: actions/designadminpanel.php:73 msgid "Design settings for this StatusNet site." -msgstr "" +msgstr "ã“ã® StatusNet サイトã®ãƒ‡ã‚¶ã‚¤ãƒ³è¨å®šã€‚" #: actions/designadminpanel.php:275 -#, fuzzy msgid "Invalid logo URL." -msgstr "ä¸æ£ãªã‚µã‚¤ã‚ºã€‚" +msgstr "ä¸æ£ãªãƒã‚´ URL" #: actions/designadminpanel.php:279 -#, fuzzy, php-format +#, php-format msgid "Theme not available: %s" -msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã¯ã‚ãªãŸãŒæ‰¿èªã—ãŸãƒ¡ãƒ‡ã‚£ã‚¢ã‚¿ã‚¤ãƒ—ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" +msgstr "テーマãŒåˆ©ç”¨ã§ãã¾ã›ã‚“: %s" #: actions/designadminpanel.php:375 msgid "Change logo" msgstr "ãƒã‚´ã®å¤‰æ›´" #: actions/designadminpanel.php:380 -#, fuzzy msgid "Site logo" -msgstr "æ–°ã—ã„通知" +msgstr "サイトãƒã‚´" #: actions/designadminpanel.php:387 -#, fuzzy msgid "Change theme" -msgstr "変更" +msgstr "テーマ変更" #: actions/designadminpanel.php:404 -#, fuzzy msgid "Site theme" -msgstr "æ–°ã—ã„通知" +msgstr "サイトテーマ" #: actions/designadminpanel.php:405 -#, fuzzy msgid "Theme for the site." -msgstr "サイトã‹ã‚‰ãƒã‚°ã‚¢ã‚¦ãƒˆ" +msgstr "サイトã®ãƒ†ãƒ¼ãƒž" #: actions/designadminpanel.php:417 lib/designsettings.php:101 msgid "Change background image" -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸ã®å¤‰æ›´" #: actions/designadminpanel.php:422 actions/designadminpanel.php:497 #: lib/designsettings.php:178 msgid "Background" -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰" #: actions/designadminpanel.php:427 -#, fuzzy, php-format +#, php-format msgid "" "You can upload a background image for the site. The maximum file size is %1" "$s." -msgstr "é•·ã™ãŽã¾ã™ã€‚通知ã¯æœ€å¤§ 140 å—ã¾ã§ã§ã™ã€‚" +msgstr "" +"ã“ã®ã‚µã‚¤ãƒˆç”¨ã«ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’アップãƒãƒ¼ãƒ‰ã§ãã¾ã™ã€‚最大ファイルサ" +"イズ㯠%1$s。" #: actions/designadminpanel.php:457 lib/designsettings.php:139 msgid "On" -msgstr "" +msgstr "オン" #: actions/designadminpanel.php:473 lib/designsettings.php:155 msgid "Off" -msgstr "" +msgstr "オフ" #: actions/designadminpanel.php:474 lib/designsettings.php:156 msgid "Turn background image on or off." -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸ã®ã‚ªãƒ³ã¾ãŸã¯ã‚ªãƒ•ã€‚" #: actions/designadminpanel.php:479 lib/designsettings.php:161 msgid "Tile background image" -msgstr "" +msgstr "タイルãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸" #: actions/designadminpanel.php:488 lib/designsettings.php:170 -#, fuzzy msgid "Change colours" -msgstr "パスワードã®å¤‰æ›´" +msgstr "色ã®å¤‰æ›´" #: actions/designadminpanel.php:510 lib/designsettings.php:191 msgid "Content" msgstr "内容" #: actions/designadminpanel.php:523 lib/designsettings.php:204 -#, fuzzy msgid "Sidebar" -msgstr "検索" +msgstr "サイドãƒãƒ¼" #: actions/designadminpanel.php:536 lib/designsettings.php:217 msgid "Text" -msgstr "" +msgstr "テã‚スト" #: actions/designadminpanel.php:549 lib/designsettings.php:230 -#, fuzzy msgid "Links" -msgstr "ãƒã‚°ã‚¤ãƒ³" +msgstr "リンク" #: actions/designadminpanel.php:577 lib/designsettings.php:247 msgid "Use defaults" -msgstr "" +msgstr "デフォルトを使用" #: actions/designadminpanel.php:578 lib/designsettings.php:248 msgid "Restore default designs" -msgstr "" +msgstr "デフォルトデザインã«æˆ»ã™ã€‚" #: actions/designadminpanel.php:584 lib/designsettings.php:254 msgid "Reset back to default" -msgstr "" +msgstr "デフォルトã¸ãƒªã‚»ãƒƒãƒˆã™ã‚‹" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -991,15 +972,15 @@ msgstr "ä¿å˜" #: actions/designadminpanel.php:587 lib/designsettings.php:257 msgid "Save design" -msgstr "" +msgstr "デザインã®ä¿å˜" #: actions/disfavor.php:81 msgid "This notice is not a favorite!" -msgstr "" +msgstr "ã“ã®ã¤ã¶ã‚„ãã¯ãŠæ°—ã«å…¥ã‚Šã§ã¯ã‚ã‚Šã¾ã›ã‚“!" #: actions/disfavor.php:94 msgid "Add to favorites" -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Šã«åŠ ãˆã‚‹" #: actions/doc.php:69 msgid "No such document." @@ -1008,40 +989,37 @@ msgstr "ãã®ã‚ˆã†ãªãƒ‰ã‚ュメントã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/editgroup.php:56 #, php-format msgid "Edit %s group" -msgstr "" +msgstr "%s グループを編集" #: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65 msgid "You must be logged in to create a group." -msgstr "" +msgstr "グループを作るã«ã¯ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/editgroup.php:103 actions/editgroup.php:168 #: actions/groupdesignsettings.php:104 actions/grouplogo.php:106 msgid "You must be an admin to edit the group" -msgstr "" +msgstr "グループを編集ã™ã‚‹ã«ã¯ç®¡ç†è€…ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚" #: actions/editgroup.php:154 msgid "Use this form to edit the group." -msgstr "" +msgstr "ã“ã®ãƒ•ã‚©ãƒ¼ãƒ を使ã£ã¦ã‚°ãƒ«ãƒ¼ãƒ—を編集ã—ã¾ã™ã€‚" #: actions/editgroup.php:201 actions/newgroup.php:145 -#, fuzzy, php-format +#, php-format msgid "description is too long (max %d chars)." -msgstr "ãƒã‚¤ã‚ªã‚°ãƒ©ãƒ•ã‚£ãŒé•·ã™ãŽã¾ã™ã€‚(最長140å—)" +msgstr "記述ãŒé•·ã™ãŽã¾ã™ã€‚(最長 %d å—)" #: actions/editgroup.php:253 -#, fuzzy msgid "Could not update group." -msgstr "ユーザを更新ã§ãã¾ã›ã‚“" +msgstr "グループを更新ã§ãã¾ã›ã‚“。" #: actions/editgroup.php:259 classes/User_group.php:390 -#, fuzzy msgid "Could not create aliases." -msgstr "ã‚¢ãƒã‚¿ãƒ¼ã‚’ä¿å˜ã§ãã¾ã›ã‚“" +msgstr "別åを作æˆã§ãã¾ã›ã‚“。" #: actions/editgroup.php:269 -#, fuzzy msgid "Options saved." -msgstr "è¨å®šãŒä¿å˜ã•ã‚Œã¾ã—ãŸã€‚" +msgstr "オプションãŒä¿å˜ã•ã‚Œã¾ã—ãŸã€‚" #: actions/emailsettings.php:60 msgid "Email Settings" @@ -1050,7 +1028,7 @@ msgstr "メールè¨å®š" #: actions/emailsettings.php:71 #, php-format msgid "Manage how you get email from %%site.name%%." -msgstr "" +msgstr "%%site.name%% ã‹ã‚‰ã®ãƒ¡ãƒ¼ãƒ«ã‚’管ç†ã€‚" #: actions/emailsettings.php:100 actions/imsettings.php:100 #: actions/smssettings.php:104 @@ -1059,7 +1037,7 @@ msgstr "ä½æ‰€" #: actions/emailsettings.php:105 msgid "Current confirmed email address." -msgstr "" +msgstr "ç¾åœ¨ç¢ºèªã•ã‚Œã¦ã„るメールアドレス。" #: actions/emailsettings.php:107 actions/emailsettings.php:140 #: actions/imsettings.php:108 actions/smssettings.php:115 @@ -1082,11 +1060,11 @@ msgstr "ä¸æ¢" #: actions/emailsettings.php:121 msgid "Email Address" -msgstr "" +msgstr "メールアドレス" #: actions/emailsettings.php:123 msgid "Email address, like \"UserName@example.org\"" -msgstr "" +msgstr "メールアドレスã€\"UserName@example.org\" ã®ã‚ˆã†ãª" #: actions/emailsettings.php:126 actions/imsettings.php:133 #: actions/smssettings.php:145 @@ -1095,19 +1073,19 @@ msgstr "è¿½åŠ " #: actions/emailsettings.php:133 actions/smssettings.php:152 msgid "Incoming email" -msgstr "" +msgstr "å…¥ã£ã¦ãるメール" #: actions/emailsettings.php:138 actions/smssettings.php:157 msgid "Send email to this address to post new notices." -msgstr "" +msgstr "æ–°ã—ã„ã¤ã¶ã‚„ã投稿ã«ã“ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¸ãƒ¡ãƒ¼ãƒ«ã™ã‚‹" #: actions/emailsettings.php:145 actions/smssettings.php:162 msgid "Make a new email address for posting to; cancels the old one." -msgstr "" +msgstr "投稿ã®ãŸã‚ã®æ–°ã—ã„Eメールアドレスを作りã¾ã™; å¤ã„方をå–り消ã—ã¾ã™ã€‚" #: actions/emailsettings.php:148 actions/smssettings.php:164 msgid "New" -msgstr "" +msgstr "New" #: actions/emailsettings.php:153 actions/imsettings.php:139 #: actions/smssettings.php:169 @@ -1116,31 +1094,34 @@ msgstr "è¨å®š" #: actions/emailsettings.php:158 msgid "Send me notices of new subscriptions through email." -msgstr "" +msgstr "メールã§æ–°è¦ãƒ•ã‚©ãƒãƒ¼ã®é€šçŸ¥ã‚’ç§ã«é€ã£ã¦ãã ã•ã„。" #: actions/emailsettings.php:163 msgid "Send me email when someone adds my notice as a favorite." msgstr "" +"ã ã‚Œã‹ãŒãŠæ°—ã«å…¥ã‚Šã¨ã—ã¦ç§ã®ã¤ã¶ã‚„ãã‚’åŠ ãˆãŸã‚‰ãƒ¡ãƒ¼ãƒ«ã‚’ç§ã«é€ã£ã¦ãã ã•ã„。" #: actions/emailsettings.php:169 msgid "Send me email when someone sends me a private message." msgstr "" +"ã ã‚Œã‹ãŒãƒ—ライベート・メッセージをç§ã«é€ã‚‹ã¨ãã«ã¯ãƒ¡ãƒ¼ãƒ«ã‚’ç§ã«é€ã£ã¦ãã ã•" +"ã„。" #: actions/emailsettings.php:174 msgid "Send me email when someone sends me an \"@-reply\"." -msgstr "" +msgstr "ã ã‚Œã‹ãŒ\"@-返信\"ã‚’ç§ã‚’é€ã‚‹ã¨ãã«ã¯ãƒ¡ãƒ¼ãƒ«ã‚’ç§ã«é€ã£ã¦ãã ã•ã„ã€" #: actions/emailsettings.php:179 msgid "Allow friends to nudge me and send me an email." -msgstr "" +msgstr "å‹é”ãŒç§ã«åˆå›³ã¨ãƒ¡ãƒ¼ãƒ«ã‚’é€ã‚‹ã“ã¨ã‚’許å¯ã™ã‚‹ã€‚" #: actions/emailsettings.php:185 msgid "I want to post notices by email." -msgstr "" +msgstr "メールã§ã¤ã¶ã‚„ãを投稿ã—ãŸã„。" #: actions/emailsettings.php:191 msgid "Publish a MicroID for my email address." -msgstr "" +msgstr "ç§ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®ãŸã‚ã«MicroIDを発行ã—ã¦ãã ã•ã„。" #: actions/emailsettings.php:302 actions/imsettings.php:264 #: actions/othersettings.php:180 actions/smssettings.php:284 @@ -1149,7 +1130,7 @@ msgstr "è¨å®šãŒä¿å˜ã•ã‚Œã¾ã—ãŸã€‚" #: actions/emailsettings.php:320 msgid "No email address." -msgstr "" +msgstr "メールアドレスãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/emailsettings.php:327 msgid "Cannot normalize that email address" @@ -1157,15 +1138,15 @@ msgstr "ãã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’æ£è¦åŒ–ã§ãã¾ã›ã‚“" #: actions/emailsettings.php:331 actions/siteadminpanel.php:157 msgid "Not a valid email address" -msgstr "" +msgstr "æ£ã—ã„メールアドレスã§ã¯ã‚ã‚Šã¾ã›ã‚“" #: actions/emailsettings.php:334 msgid "That is already your email address." -msgstr "" +msgstr "ã“ã‚Œã¯ã™ã§ã«ã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã™ã€‚" #: actions/emailsettings.php:337 msgid "That email address already belongs to another user." -msgstr "" +msgstr "ã“ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ—¢ã«ä»–ã®äººãŒä½¿ã£ã¦ã„ã¾ã™ã€‚" #: actions/emailsettings.php:353 actions/imsettings.php:317 #: actions/smssettings.php:337 @@ -1197,7 +1178,7 @@ msgstr "確èªä½œæ¥ãŒä¸æ¢ã•ã‚Œã¾ã—ãŸã€‚" #: actions/emailsettings.php:413 msgid "That is not your email address." -msgstr "" +msgstr "ã“ã‚Œã¯ã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/emailsettings.php:432 actions/imsettings.php:408 #: actions/smssettings.php:425 @@ -1206,53 +1187,56 @@ msgstr "アドレスã¯å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚" #: actions/emailsettings.php:446 actions/smssettings.php:518 msgid "No incoming email address." -msgstr "" +msgstr "å…¥ã£ã¦ãるメールアドレスã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/emailsettings.php:456 actions/emailsettings.php:478 #: actions/smssettings.php:528 actions/smssettings.php:552 msgid "Couldn't update user record." -msgstr "" +msgstr "利用者レコードを更新ã§ãã¾ã›ã‚“。" #: actions/emailsettings.php:459 actions/smssettings.php:531 msgid "Incoming email address removed." -msgstr "" +msgstr "å…¥ã£ã¦ãるメールアドレスã¯å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚" #: actions/emailsettings.php:481 actions/smssettings.php:555 msgid "New incoming email address added." -msgstr "" +msgstr "æ–°ã—ã„å…¥ã£ã¦ãるメールアドレスãŒè¿½åŠ ã•ã‚Œã¾ã—ãŸã€‚" #: actions/favor.php:79 msgid "This notice is already a favorite!" -msgstr "" +msgstr "ã“ã®ã¤ã¶ã‚„ãã¯ã™ã§ã«ãŠæ°—ã«å…¥ã‚Šã§ã™!" #: actions/favor.php:92 lib/disfavorform.php:140 msgid "Disfavor favorite" -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Šã‚’ã‚„ã‚ã‚‹" #: actions/favorited.php:65 lib/popularnoticesection.php:88 #: lib/publicgroupnav.php:93 -#, fuzzy msgid "Popular notices" -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "人気ã®ã¤ã¶ã‚„ã" #: actions/favorited.php:67 -#, fuzzy, php-format +#, php-format msgid "Popular notices, page %d" -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "人気ã®ã¤ã¶ã‚„ãã€ãƒšãƒ¼ã‚¸ %d" #: actions/favorited.php:79 msgid "The most popular notices on the site right now." -msgstr "" +msgstr "ç¾åœ¨ã‚µã‚¤ãƒˆã§æœ€ã‚‚人気ã®ã¤ã¶ã‚„ã。" #: actions/favorited.php:150 msgid "Favorite notices appear on this page but no one has favorited one yet." msgstr "" +"ãŠæ°—ã«å…¥ã‚Šã®ã¤ã¶ã‚„ããŒãƒšãƒ¼ã‚¸ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€ã—ã‹ã—ã¾ã ãŠæ°—ã«å…¥ã‚ŠãŒã‚ã‚Šã¾ã›" +"ん。" #: actions/favorited.php:153 msgid "" "Be the first to add a notice to your favorites by clicking the fave button " "next to any notice you like." msgstr "" +"ã‚ãªãŸã®å¥½ããªã¤ã¶ã‚„ãã‚’ã€ãŠæ°—ã«å…¥ã‚Šãƒœã‚¿ãƒ³ã‚’クリックã—ã¦ã‚ãªãŸã®ãŠæ°—ã«å…¥ã‚Šã«" +"åŠ ãˆã‚‹æœ€åˆã«ãªã£ã¦ãã ã•ã„。" #: actions/favorited.php:156 #, php-format @@ -1260,61 +1244,58 @@ msgid "" "Why not [register an account](%%action.register%%) and be the first to add a " "notice to your favorites!" msgstr "" +"ãªãœ [アカウント登録](%%action.register%%) ã—ãªã„ã®ã§ã™ã‹ã€ãã—ã¦ã€ã‚ãªãŸã®ãŠ" +"æ°—ã«å…¥ã‚Šã«ã¤ã¶ã‚„ãã‚’åŠ ãˆã‚‹æœ€åˆã«ãªã‚Šã¾ã—ょã†!" #: actions/favoritesrss.php:111 actions/showfavorites.php:77 #: lib/personalgroupnav.php:115 #, php-format msgid "%s's favorite notices" -msgstr "" +msgstr "%s ã®ãŠæ°—ã«å…¥ã‚Šã®ã¤ã¶ã‚„ã" #: actions/favoritesrss.php:115 -#, fuzzy, php-format +#, php-format msgid "Updates favored by %1$s on %2$s!" -msgstr "マイクãƒãƒ–ãƒã‚° by %s" +msgstr "%1$s ã«ã‚ˆã‚‹ %2$s 上ã®ãŠæ°—ã«å…¥ã‚Šã‚’æ›´æ–°!" #: actions/featured.php:69 lib/featureduserssection.php:87 #: lib/publicgroupnav.php:89 msgid "Featured users" -msgstr "" +msgstr "フィーãƒãƒ£ãƒ¼ã•ã‚ŒãŸåˆ©ç”¨è€…" #: actions/featured.php:71 #, php-format msgid "Featured users, page %d" -msgstr "" +msgstr "フィーãƒãƒ£ãƒ¼ã•ã‚ŒãŸåˆ©ç”¨è€…ã€ãƒšãƒ¼ã‚¸ %d" #: actions/featured.php:99 #, php-format msgid "A selection of some great users on %s" -msgstr "" +msgstr "%s 上ã®å„ªã‚ŒãŸåˆ©ç”¨è€…ã®é›†ã¾ã‚Š" #: actions/file.php:34 -#, fuzzy msgid "No notice ID." -msgstr "æ–°ã—ã„通知" +msgstr "ã¤ã¶ã‚„ãIDãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/file.php:38 -#, fuzzy msgid "No notice." -msgstr "æ–°ã—ã„通知" +msgstr "ã¤ã¶ã‚„ããŒã‚ã‚Šã¾ã›ã‚“。" #: actions/file.php:42 -#, fuzzy msgid "No attachments." -msgstr "ãã®ã‚ˆã†ãªãƒ‰ã‚ュメントã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ãã®ã‚ˆã†ãªæ·»ä»˜ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/file.php:51 -#, fuzzy msgid "No uploaded attachments." -msgstr "ãã®ã‚ˆã†ãªãƒ‰ã‚ュメントã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸæ·»ä»˜ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/finishremotesubscribe.php:69 msgid "Not expecting this response!" msgstr "想定外ã®ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã§ã™ï¼" #: actions/finishremotesubscribe.php:80 -#, fuzzy msgid "User being listened to does not exist." -msgstr "リストã•ã‚Œã¦ã„るユーザã¯å˜åœ¨ã—ã¾ã›ã‚“。" +msgstr "å˜åœ¨ã—ãªã„よã†ã«è´ã‹ã‚Œã¦ã„るユーザ。" #: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59 msgid "You can use the local subscription!" @@ -1322,22 +1303,20 @@ msgstr "ãƒãƒ¼ã‚«ãƒ«ã‚µãƒ–スクリプションを使用å¯èƒ½ã§ã™ï¼" #: actions/finishremotesubscribe.php:99 msgid "That user has blocked you from subscribing." -msgstr "" +msgstr "ã“ã®åˆ©ç”¨è€…ã¯ãƒ•ã‚©ãƒãƒ¼ã‚’ブãƒãƒƒã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚" #: actions/finishremotesubscribe.php:110 -#, fuzzy msgid "You are not authorized." msgstr "èªè¨¼ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: actions/finishremotesubscribe.php:113 -#, fuzzy msgid "Could not convert request token to access token." msgstr "リクエストトークンをアクセストークンã«å¤‰æ›ã§ãã¾ã›ã‚“" #: actions/finishremotesubscribe.php:118 -#, fuzzy msgid "Remote service uses unknown version of OMB protocol." -msgstr "予期ã›ã¬ OMB プãƒãƒˆã‚³ãƒ«ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã™ã€‚" +msgstr "" +"リモートサービスã¯ã€ä¸æ˜Žãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® OMB プãƒãƒˆã‚³ãƒ«ã‚’使用ã—ã¦ã„ã¾ã™ã€‚" #: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306 msgid "Error updating remote profile" @@ -1362,37 +1341,34 @@ msgstr "ファイルをèªã¿è¾¼ã‚ã¾ã›ã‚“。" #: actions/makeadmin.php:71 actions/subedit.php:46 #: lib/profileformaction.php:70 msgid "No profile specified." -msgstr "" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«è¨˜è¿°ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/groupblock.php:76 actions/groupunblock.php:76 #: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46 #: lib/profileformaction.php:77 msgid "No profile with that ID." -msgstr "" +msgstr "ãã®ï¼©ï¼¤ã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/groupblock.php:81 actions/groupunblock.php:81 #: actions/makeadmin.php:81 msgid "No group specified." -msgstr "" +msgstr "グループ記述ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/groupblock.php:91 msgid "Only an admin can block group members." -msgstr "" +msgstr "管ç†è€…ã ã‘ãŒã‚°ãƒ«ãƒ¼ãƒ—メンãƒãƒ¼ã‚’ブãƒãƒƒã‚¯ã§ãã¾ã™ã€‚" #: actions/groupblock.php:95 -#, fuzzy msgid "User is already blocked from group." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者ã¯ã™ã§ã«ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ãƒ–ãƒãƒƒã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚" #: actions/groupblock.php:100 -#, fuzzy msgid "User is not a member of group." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "利用者ã¯ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/groupblock.php:136 actions/groupmembers.php:314 -#, fuzzy msgid "Block user from group" -msgstr "ãã®ã‚ˆã†ãªãƒ¦ãƒ¼ã‚¶ã¯ã„ã¾ã›ã‚“。" +msgstr "グループã‹ã‚‰ãƒ–ãƒãƒƒã‚¯ã•ã‚ŒãŸåˆ©ç”¨è€…" #: actions/groupblock.php:162 #, php-format @@ -1401,69 +1377,71 @@ msgid "" "be removed from the group, unable to post, and unable to subscribe to the " "group in the future." msgstr "" +"本当ã«åˆ©ç”¨è€… %s をグループ %s ã‹ã‚‰ãƒ–ãƒãƒƒã‚¯ã—ã¾ã™ã‹? 彼らã¯ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰å‰Šé™¤ã•" +"れるã€æŠ•ç¨¿ã§ããªã„ã€ã‚°ãƒ«ãƒ¼ãƒ—をフォãƒãƒ¼ã§ããªããªã‚Šã¾ã™ã€‚" #: actions/groupblock.php:178 -#, fuzzy msgid "Do not block this user from this group" -msgstr "サーãƒã¸ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã§ãã¾ã›ã‚“ : %s" +msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ã“ã®åˆ©ç”¨è€…をブãƒãƒƒã‚¯ã—ãªã„" #: actions/groupblock.php:179 -#, fuzzy msgid "Block this user from this group" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブãƒãƒƒã‚¯ã™ã‚‹" +msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブãƒãƒƒã‚¯" #: actions/groupblock.php:196 msgid "Database error blocking user from group." -msgstr "" +msgstr "グループã‹ã‚‰åˆ©ç”¨è€…ブãƒãƒƒã‚¯ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚¨ãƒ©ãƒ¼" #: actions/groupbyid.php:74 msgid "No ID" -msgstr "" +msgstr "IDãŒã‚ã‚Šã¾ã›ã‚“" #: actions/groupdesignsettings.php:68 msgid "You must be logged in to edit a group." -msgstr "" +msgstr "グループを編集ã™ã‚‹ã«ã¯ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/groupdesignsettings.php:141 msgid "Group design" -msgstr "" +msgstr "グループデザイン" #: actions/groupdesignsettings.php:152 msgid "" "Customize the way your group looks with a background image and a colour " "palette of your choice." msgstr "" +"ã‚ãªãŸãŒé¸ã‚“ã パレットã®è‰²ã¨ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸ã§ã‚ãªãŸã®ã‚°ãƒ«ãƒ¼ãƒ—をカス" +"タマイズã—ã¦ãã ã•ã„。" #: actions/groupdesignsettings.php:263 actions/userdesignsettings.php:186 #: lib/designsettings.php:391 lib/designsettings.php:413 -#, fuzzy msgid "Couldn't update your design." -msgstr "ユーザを更新ã§ãã¾ã›ã‚“" +msgstr "ã‚ãªãŸã®ãƒ‡ã‚¶ã‚¤ãƒ³ã‚’æ›´æ–°ã§ãã¾ã›ã‚“。" #: actions/groupdesignsettings.php:287 actions/groupdesignsettings.php:297 #: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220 #: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273 msgid "Unable to save your design settings!" -msgstr "" +msgstr "ã‚ãªãŸã®ãƒ‡ã‚¶ã‚¤ãƒ³è¨å®šã‚’ä¿å˜ã§ãã¾ã›ã‚“!" #: actions/groupdesignsettings.php:308 actions/userdesignsettings.php:231 -#, fuzzy msgid "Design preferences saved." -msgstr "è¨å®šãŒä¿å˜ã•ã‚Œã¾ã—ãŸã€‚" +msgstr "デザインè¨å®šãŒä¿å˜ã•ã‚Œã¾ã—ãŸã€‚" #: actions/grouplogo.php:139 actions/grouplogo.php:192 msgid "Group logo" -msgstr "" +msgstr "グループãƒã‚´" #: actions/grouplogo.php:150 #, php-format msgid "" "You can upload a logo image for your group. The maximum file size is %s." msgstr "" +"ã‚ãªãŸã®ã‚°ãƒ«ãƒ¼ãƒ—用ã«ãƒã‚´ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’アップãƒãƒ¼ãƒ‰ã§ãã¾ã™ã€‚最大ファイルサイズ㯠" +"%s。" #: actions/grouplogo.php:362 msgid "Pick a square area of the image to be the logo." -msgstr "" +msgstr "ãƒã‚´ã¨ãªã‚‹ã‚¤ãƒ¡ãƒ¼ã‚¸ã®æ£æ–¹å½¢ã‚’é¸æŠžã€‚" #: actions/grouplogo.php:396 msgid "Logo updated." @@ -1476,18 +1454,18 @@ msgstr "ãƒã‚´ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" #: actions/groupmembers.php:93 lib/groupnav.php:92 #, php-format msgid "%s group members" -msgstr "" +msgstr "%s グループメンãƒãƒ¼" #: actions/groupmembers.php:96 #, php-format msgid "%s group members, page %d" -msgstr "" +msgstr "%s グループメンãƒãƒ¼ã€ãƒšãƒ¼ã‚¸ %d" #: actions/groupmembers.php:111 msgid "A list of the users in this group." -msgstr "" +msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®åˆ©ç”¨è€…ã®ãƒªã‚¹ãƒˆã€‚" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "管ç†è€…" @@ -1497,31 +1475,30 @@ msgstr "ブãƒãƒƒã‚¯" #: actions/groupmembers.php:441 msgid "Make user an admin of the group" -msgstr "" +msgstr "利用者をグループã®ç®¡ç†è€…ã«ã™ã‚‹" #: actions/groupmembers.php:473 -#, fuzzy msgid "Make Admin" -msgstr "管ç†è€…" +msgstr "管ç†è€…ã«ã™ã‚‹" #: actions/groupmembers.php:473 msgid "Make this user an admin" -msgstr "" +msgstr "ã“ã®åˆ©ç”¨è€…を管ç†è€…ã«ã™ã‚‹" #: actions/grouprss.php:133 -#, fuzzy, php-format +#, php-format msgid "Updates from members of %1$s on %2$s!" -msgstr "マイクãƒãƒ–ãƒã‚° by %s" +msgstr "%2$s 上㮠%1$s ã®ãƒ¡ãƒ³ãƒãƒ¼ã‹ã‚‰æ›´æ–°ã™ã‚‹" #: actions/groups.php:62 lib/profileaction.php:210 lib/profileaction.php:230 #: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98 msgid "Groups" -msgstr "" +msgstr "グループ" #: actions/groups.php:64 #, php-format msgid "Groups, page %d" -msgstr "" +msgstr "グループã€ãƒšãƒ¼ã‚¸ %d" #: actions/groups.php:90 #, php-format @@ -1532,19 +1509,24 @@ msgid "" "for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup" "%%%%)" msgstr "" +"%%%%site.name%%%% グループã¯ã€ã‚ãªãŸã¨åŒæ§˜ã®é–¢å¿ƒäº‹ã‚’ã‚‚ã¤äººã€…を見ã¤ã‘ã¦è©±ã‚’ã™" +"ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚グループã«å…¥ã£ãŸå¾Œã€ã‚ãªãŸã¯ä»–ã®ãƒ¡ãƒ³ãƒãƒ¼ã« \"!groupname\" " +"文法を使ã£ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã‚ãªãŸãŒå¥½ããªã‚°ãƒ«ãƒ¼ãƒ—ãŒã‚ã‚‹ã‹ã©" +"ã†ã‹[探ã—ã¦ã¿ã‚‹](%%%%action.groupsearch%%%%)ã‹ã€ã‚ãªãŸè‡ªèº«ã§[始ã‚ã¦ãã ã•ã„!]" +"(%%%%action.newgroup%%%%)" #: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122 -#, fuzzy msgid "Create a new group" -msgstr "アカウントを作æˆ" +msgstr "æ–°ã—ã„グループを作æˆ" #: actions/groupsearch.php:52 -#, fuzzy, php-format +#, php-format msgid "" "Search for groups on %%site.name%% by their name, location, or description. " "Separate the terms by spaces; they must be 3 characters or more." msgstr "" -"%%site.name%% ã®äººã‚’åå‰ã€å ´æ‰€ã€èˆˆå‘³ã‹ã‚‰æ¤œç´¢ã€‚検索語ã¯ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡ã‚‹ã€‚3å—以上" +"%%site.name%% ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‚’ã€åå‰ã€å ´æ‰€ã€è¨˜è¿°ã‹ã‚‰æ¤œç´¢ã€‚検索語ã¯ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡" +"り。3å—以上。" #: actions/groupsearch.php:58 msgid "Group search" @@ -1552,9 +1534,8 @@ msgstr "グループã®æ¤œç´¢" #: actions/groupsearch.php:79 actions/noticesearch.php:117 #: actions/peoplesearch.php:83 -#, fuzzy msgid "No results." -msgstr "çµæžœãªã—" +msgstr "çµæžœãªã—。" #: actions/groupsearch.php:82 #, php-format @@ -1562,6 +1543,8 @@ msgid "" "If you can't find the group you're looking for, you can [create it](%%action." "newgroup%%) yourself." msgstr "" +"ã‚‚ã—ã€ã‚ãªãŸãŒæŽ¢ã—ã¦ã„るグループãŒè¦‹ã¤ã‹ã‚‰ãªã„ã¨ãã€ã‚ãªãŸã¯[ãれを作æˆ](%%" +"action.newgroup%%)ã§ãã¾ã™ã€‚" #: actions/groupsearch.php:85 #, php-format @@ -1569,17 +1552,18 @@ msgid "" "Why not [register an account](%%action.register%%) and [create the group](%%" "action.newgroup%%) yourself!" msgstr "" +"ãªãœ[アカウント登録](%%action.register%%) ã‚„ [グループ作æˆ](%%action.newgroup" +"%%) ã—ãªã„ã®ã‹!" #: actions/groupunblock.php:91 msgid "Only an admin can unblock group members." -msgstr "" +msgstr "管ç†è€…ã ã‘ãŒã‚°ãƒ«ãƒ¼ãƒ—メンãƒãƒ¼ã‚’アンブãƒãƒƒã‚¯ã§ãã¾ã™ã€‚" #: actions/groupunblock.php:95 -#, fuzzy msgid "User is not blocked from group." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者ã¯ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ãƒ–ãƒãƒƒã‚¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "ブãƒãƒƒã‚¯ã®å‰Šé™¤ã‚¨ãƒ©ãƒ¼" @@ -1597,9 +1581,8 @@ msgstr "" "ã™ã€‚下ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’è¨å®šã—ã¦ä¸‹ã•ã„。" #: actions/imsettings.php:89 -#, fuzzy msgid "IM is not available." -msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã¯ã‚ãªãŸãŒæ‰¿èªã—ãŸãƒ¡ãƒ‡ã‚£ã‚¢ã‚¿ã‚¤ãƒ—ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" +msgstr "ï¼©ï¼ ãŒåˆ©ç”¨ä¸å¯ã€‚" #: actions/imsettings.php:106 msgid "Current confirmed Jabber/GTalk address." @@ -1638,10 +1621,12 @@ msgstr "Jabber/GTalkã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ãŒå¤‰æ›´ã•ã‚ŒãŸæ™‚ã«é€šçŸ¥ã‚’é€ã‚‹ã€‚ #: actions/imsettings.php:153 msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to." msgstr "" +"Jabber/GTalkを通ã—ã¦å›žç”ã‚’ã€ç§ãŒãƒ•ã‚©ãƒãƒ¼ã•ã‚Œã¦ã„ãªã„人々ã‹ã‚‰ç§ã«é€ã£ã¦ãã ã•" +"ã„。" #: actions/imsettings.php:159 msgid "Publish a MicroID for my Jabber/GTalk address." -msgstr "" +msgstr "ç§ã®Jabber/GTalkアドレスã®ãŸã‚ã«MicroIDを発行ã—ã¦ãã ã•ã„。" #: actions/imsettings.php:285 msgid "No Jabber ID." @@ -1679,25 +1664,26 @@ msgstr "ãã® Jabber ID ã¯ã‚ãªãŸã®ã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/inbox.php:59 #, php-format msgid "Inbox for %s - page %d" -msgstr "" +msgstr "%s ã®å—ä¿¡ç®± - ページ %d" #: actions/inbox.php:62 #, php-format msgid "Inbox for %s" -msgstr "" +msgstr "%s ã®å—ä¿¡ç®±" #: actions/inbox.php:115 msgid "This is your inbox, which lists your incoming private messages." msgstr "" +"ã“ã‚Œã¯ã‚ãªãŸã®å—ä¿¡ç®±ã§ã™ã€ã‚„ã£ã¦ããŸãƒ—ライベートメッセージをリストã—ã¾ã™ã€‚" #: actions/invite.php:39 msgid "Invites have been disabled." -msgstr "" +msgstr "招待ã¯ç„¡åŠ¹ã«ã•ã‚Œã¾ã—ãŸã€‚" #: actions/invite.php:41 #, php-format msgid "You must be logged in to invite other users to use %s" -msgstr "" +msgstr "ä»–ã®ãƒ¦ãƒ¼ã‚¶ãŒ%sを使用ã™ã‚‹ã‚ˆã†èª˜ã†ãŸã‚ã«ã¯ãƒã‚°ã‚¤ãƒ³ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/invite.php:72 #, php-format @@ -1706,15 +1692,15 @@ msgstr "ä¸æ£ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ï¼š%s'" #: actions/invite.php:110 msgid "Invitation(s) sent" -msgstr "" +msgstr "招待をé€ã‚Šã¾ã—ãŸã€‚" #: actions/invite.php:112 msgid "Invite new users" -msgstr "" +msgstr "æ–°ã—ã„利用者を招待" #: actions/invite.php:128 msgid "You are already subscribed to these users:" -msgstr "" +msgstr "ã™ã§ã«ã“れらã®åˆ©ç”¨è€…をフォãƒãƒ¼ã—ã¦ã„ã¾ã™:" #: actions/invite.php:131 actions/invite.php:139 #, php-format @@ -1725,21 +1711,26 @@ msgstr "%s (%s)" msgid "" "These people are already users and you were automatically subscribed to them:" msgstr "" +"ã“れらã®äººã€…ã¯æ—¢ã«ãƒ¦ãƒ¼ã‚¶ã§ã™ã€ãã—ã¦ã€ã‚ãªãŸã¯è‡ªå‹•çš„ã«å½¼ã‚‰ã«ãƒ•ã‚©ãƒãƒ¼ã•ã‚Œã¾ã—" +"ãŸ:" #: actions/invite.php:144 msgid "Invitation(s) sent to the following people:" -msgstr "" +msgstr "招待を以下ã®äººã€…ã«é€ä¿¡ã—ã¾ã—ãŸ:" #: actions/invite.php:150 msgid "" "You will be notified when your invitees accept the invitation and register " "on the site. Thanks for growing the community!" msgstr "" +"ã‚ãªãŸã®æ‹›å¾…å‚åŠ è€…ãŒæ‹›å¾…ã«å¿œã˜ã¦ã€ã‚µã‚¤ãƒˆã«ç™»éŒ²ã™ã‚‹ã¨ã€ã‚ãªãŸã«é€šçŸ¥ã•ã‚Œã‚‹ã§" +"ã—ょã†ã€‚ コミュニティを広ã’ã¦ãã ã•ã£ã¦ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™!" #: actions/invite.php:162 msgid "" "Use this form to invite your friends and colleagues to use this service." msgstr "" +"å‹äººã‚„åŒåƒšãŒã“ã®ã‚µãƒ¼ãƒ“スを利用ã™ã‚‹ã‚ˆã†ã“ã®ãƒ•ã‚©ãƒ¼ãƒ を使用ã—ã¦èª˜ã£ã¦ãã ã•ã„。" #: actions/invite.php:187 msgid "Email addresses" @@ -1751,13 +1742,13 @@ msgstr "招待ã™ã‚‹å‹äººã®ã‚¢ãƒ‰ãƒ¬ã‚¹ (一行ã«ä¸€ã¤)" #: actions/invite.php:192 msgid "Personal message" -msgstr "" +msgstr "パーソナルメッセージ" #: actions/invite.php:194 msgid "Optionally add a personal message to the invitation." -msgstr "" +msgstr "ä»»æ„ã«æ‹›å¾…ã«ãƒ‘ãƒ¼ã‚½ãƒŠãƒ«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’åŠ ãˆã¦ãã ã•ã„。" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "é€ã‚‹" @@ -1825,71 +1816,68 @@ msgstr "" #: actions/joingroup.php:60 msgid "You must be logged in to join a group." -msgstr "" +msgstr "グループã«å…¥ã‚‹ãŸã‚ã«ã¯ãƒã‚°ã‚¤ãƒ³ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/joingroup.php:90 lib/command.php:217 msgid "You are already a member of that group" msgstr "ã‚ãªãŸã¯æ—¢ã«ãã®ã‚°ãƒ«ãƒ¼ãƒ—ã«å‚åŠ ã—ã¦ã„ã¾ã™ã€‚" #: actions/joingroup.php:128 lib/command.php:234 -#, fuzzy, php-format +#, php-format msgid "Could not join user %s to group %s" -msgstr "サーãƒã¸ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã§ãã¾ã›ã‚“ : %s" +msgstr "利用者 %s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %s ã«å‚åŠ ã§ãã¾ã›ã‚“" #: actions/joingroup.php:135 lib/command.php:239 #, php-format msgid "%s joined group %s" -msgstr "" +msgstr "%s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %s ã«å‚åŠ ã—ã¾ã—ãŸ" #: actions/leavegroup.php:60 msgid "You must be logged in to leave a group." -msgstr "" +msgstr "グループã‹ã‚‰é›¢ã‚Œã‚‹ã«ã¯ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/leavegroup.php:90 lib/command.php:268 -#, fuzzy msgid "You are not a member of that group." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã¯ãã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/leavegroup.php:119 lib/command.php:278 msgid "Could not find membership record." -msgstr "" +msgstr "ä¼šå“¡è³‡æ ¼è¨˜éŒ²ã‚’è¦‹ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" #: actions/leavegroup.php:127 lib/command.php:284 -#, fuzzy, php-format +#, php-format msgid "Could not remove user %s to group %s" -msgstr "OpenIDを作æˆã§ãã¾ã›ã‚“ : %s" +msgstr "利用者 %s をグループ %s ã‹ã‚‰å‰Šé™¤ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“" #: actions/leavegroup.php:134 lib/command.php:289 #, php-format msgid "%s left group %s" -msgstr "" +msgstr "%s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %s ã«æ®‹ã‚Šã¾ã—ãŸã€‚" #: actions/login.php:83 actions/register.php:137 msgid "Already logged in." msgstr "æ—¢ã«ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã™ã€‚" #: actions/login.php:114 actions/login.php:124 -#, fuzzy msgid "Invalid or expired token." -msgstr "ä¸æ£ãªé€šçŸ¥å†…容" +msgstr "ä¸æ£ã¾ãŸã¯æœŸé™åˆ‡ã‚Œã®ãƒˆãƒ¼ã‚¯ãƒ³" #: actions/login.php:147 msgid "Incorrect username or password." msgstr "ユーザåã¾ãŸã¯ãƒ‘スワードãŒé–“é•ã£ã¦ã„ã¾ã™ã€‚" #: actions/login.php:153 -#, fuzzy msgid "Error setting user. You are probably not authorized." -msgstr "èªè¨¼ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "ユーザè¨å®šã‚¨ãƒ©ãƒ¼ã€‚ ã‚ãªãŸã¯ãŸã¶ã‚“承èªã•ã‚Œã¦ã„ã¾ã›ã‚“。" -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "ãƒã‚°ã‚¤ãƒ³" #: actions/login.php:247 msgid "Login to site" -msgstr "" +msgstr "サイトã¸ãƒã‚°ã‚¤ãƒ³" #: actions/login.php:250 actions/profilesettings.php:106 #: actions/register.php:423 actions/showgroup.php:236 actions/tagother.php:94 @@ -1928,45 +1916,47 @@ msgid "" "Login with your username and password. Don't have a username yet? [Register]" "(%%action.register%%) a new account." msgstr "" +"ユーザåã¨ãƒ‘スワードã§ã€ãƒã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„。 ã¾ã ユーザåã‚’æŒã£ã¦ã„ã¾ã›ã‚“" +"ã‹? æ–°ã—ã„アカウントを [登録](%%action.register%%)。" #: actions/makeadmin.php:91 msgid "Only an admin can make another user an admin." -msgstr "" +msgstr "管ç†è€…ã ã‘ãŒåˆ¥ã®ãƒ¦ãƒ¼ã‚¶ã‚’管ç†è€…ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" #: actions/makeadmin.php:95 #, php-format msgid "%s is already an admin for group \"%s\"." -msgstr "" +msgstr "%s ã¯ã™ã§ã«ã‚°ãƒ«ãƒ¼ãƒ— \"%s\" ã®ç®¡ç†è€…ã§ã™ã€‚" #: actions/makeadmin.php:132 #, php-format msgid "Can't get membership record for %s in group %s" -msgstr "" +msgstr "%s ã®ä¼šå“¡è³‡æ ¼è¨˜éŒ²ã‚’グループ %s ä¸ã‹ã‚‰å–å¾—ã§ãã¾ã›ã‚“。" #: actions/makeadmin.php:145 #, php-format msgid "Can't make %s an admin for group %s" -msgstr "" +msgstr "%s をグループ %s ã®ç®¡ç†è€…ã«ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“" #: actions/microsummary.php:69 msgid "No current status" -msgstr "" +msgstr "ç¾åœ¨ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ã‚ã‚Šã¾ã›ã‚“" #: actions/newgroup.php:53 msgid "New group" -msgstr "" +msgstr "æ–°ã—ã„グループ" #: actions/newgroup.php:110 msgid "Use this form to create a new group." -msgstr "" +msgstr "ã“ã®ãƒ•ã‚©ãƒ¼ãƒ を使ã£ã¦æ–°ã—ã„グループを作æˆã—ã¾ã™ã€‚" #: actions/newmessage.php:71 actions/newmessage.php:231 msgid "New message" -msgstr "" +msgstr "æ–°ã—ã„メッセージ" #: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:367 msgid "You can't send a message to this user." -msgstr "" +msgstr "ã“ã®åˆ©ç”¨è€…ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。" #: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:351 #: lib/command.php:484 @@ -1975,50 +1965,51 @@ msgstr "コンテンツãŒã‚ã‚Šã¾ã›ã‚“ï¼" #: actions/newmessage.php:158 msgid "No recipient specified." -msgstr "" +msgstr "å—å–人ãŒæ›¸ã‹ã‚Œã¦ã„ã¾ã›ã‚“。" #: actions/newmessage.php:164 lib/command.php:370 msgid "" "Don't send a message to yourself; just say it to yourself quietly instead." msgstr "" +"自分自身ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“; ã‹ã‚ã‚Šã«ç‹¬ã‚Šè¨€ã‚’言ã„ã¾ã—ょã†ã€‚" #: actions/newmessage.php:181 msgid "Message sent" -msgstr "" +msgstr "メッセージをé€ã‚Šã¾ã—ãŸ" #: actions/newmessage.php:185 lib/command.php:376 #, php-format msgid "Direct message to %s sent" -msgstr "" +msgstr "ダイレクトメッセージを %s ã«é€ã‚Šã¾ã—ãŸ" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" -msgstr "" +msgstr "Ajax エラー" #: actions/newnotice.php:69 msgid "New notice" -msgstr "æ–°ã—ã„通知" +msgstr "æ–°ã—ã„ã¤ã¶ã‚„ã" -#: actions/newnotice.php:216 -#, fuzzy +#: actions/newnotice.php:211 msgid "Notice posted" -msgstr "通知" +msgstr "ã¤ã¶ã‚„ãを投稿ã—ã¾ã—ãŸ" #: actions/noticesearch.php:68 #, php-format msgid "" "Search for notices on %%site.name%% by their contents. Separate search terms " "by spaces; they must be 3 characters or more." -msgstr "%%site.name%% ã®é€šçŸ¥ã‚’内容ã‹ã‚‰æ¤œç´¢ã€‚検索語ã¯ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡ã‚‹ã€‚3å—以上" +msgstr "" +"%%site.name%% ã®ã¤ã¶ã‚„ãを内容ã‹ã‚‰æ¤œç´¢ã€‚検索語ã¯ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡ã‚Šã€‚3å—以上" #: actions/noticesearch.php:78 msgid "Text search" -msgstr "æ–‡å—検索" +msgstr "テã‚スト検索" #: actions/noticesearch.php:91 -#, fuzzy, php-format +#, php-format msgid "Search results for \"%s\" on %s" -msgstr "\"%s\" ã®ã‚¹ãƒˆãƒªãƒ¼ãƒ を検索" +msgstr "%s ã® %s 上ã®æ¤œç´¢çµæžœ" #: actions/noticesearch.php:121 #, php-format @@ -2026,6 +2017,8 @@ msgid "" "Be the first to [post on this topic](%%%%action.newnotice%%%%?" "status_textarea=%s)!" msgstr "" +"最åˆã® [ã“ã®ãƒˆãƒ”ック投稿](%%%%action.newnotice%%%%?status_textarea=%s) ã‚’ã—ã¦" +"ãã ã•ã„!" #: actions/noticesearch.php:124 #, php-format @@ -2033,38 +2026,42 @@ msgid "" "Why not [register an account](%%%%action.register%%%%) and be the first to " "[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!" msgstr "" +"ãªãœ [アカウント登録](%%%%action.register%%%%) ã—ãªã„ã®ã§ã™ã‹ã€ãã—ã¦æœ€åˆã®" +"[ã“ã®ãƒˆãƒ”ック投稿](%%%%action.newnotice%%%%?status_textarea=%s)ã—ã¦ãã ã•ã„!" #: actions/noticesearchrss.php:96 -#, fuzzy, php-format +#, php-format msgid "Updates with \"%s\"" -msgstr "マイクãƒãƒ–ãƒã‚° by %s" +msgstr "%s ã§æ›´æ–°" #: actions/noticesearchrss.php:98 #, php-format msgid "Updates matching search term \"%1$s\" on %2$s!" -msgstr "検索語「%sã€ã«ä¸€è‡´ã™ã‚‹ã™ã¹ã¦ã®æ›´æ–°" +msgstr "\"%2$s\" 上ã®æ¤œç´¢èªž \"$1$s\" ã«ä¸€è‡´ã™ã‚‹ã™ã¹ã¦ã®æ›´æ–°" #: actions/nudge.php:85 msgid "" "This user doesn't allow nudges or hasn't confirmed or set his email yet." msgstr "" +"ã“ã®åˆ©ç”¨è€…ã¯ã€åˆå›³ã‚’許å¯ã—ã¦ã„ãªã„ã‹ã€ç¢ºèªã•ã‚Œã¦ã„ãŸçŠ¶æ…‹ã§ãªã„ã‹ã€ãƒ¡ãƒ¼ãƒ«è¨å®š" +"ã‚’ã—ã¦ã„ã¾ã›ã‚“。" #: actions/nudge.php:94 msgid "Nudge sent" -msgstr "" +msgstr "åˆå›³ã‚’é€ã£ãŸ" #: actions/nudge.php:97 msgid "Nudge sent!" -msgstr "" +msgstr "åˆå›³ã‚’é€ã£ãŸ!" #: actions/oembed.php:79 actions/shownotice.php:100 msgid "Notice has no profile" -msgstr "通知ã«ã¯ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ã¤ã¶ã‚„ãã«ã¯ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/oembed.php:86 actions/shownotice.php:180 #, php-format msgid "%1$s's status on %2$s" -msgstr "%2$s ã«ãŠã‘ã‚‹ %1$ ã®çŠ¶æ…‹" +msgstr "%2$s ã«ãŠã‘ã‚‹ %1$ ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹" #: actions/oembed.php:157 msgid "content type " @@ -2072,69 +2069,68 @@ msgstr "内容種別 " #: actions/oembed.php:160 msgid "Only " -msgstr "" +msgstr "ã ã‘ " #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1031 #: lib/api.php:1059 lib/api.php:1169 msgid "Not a supported data format." -msgstr "" +msgstr "サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„データ形å¼ã€‚" #: actions/opensearch.php:64 msgid "People Search" -msgstr "" +msgstr "ピープル検索" #: actions/opensearch.php:67 msgid "Notice Search" -msgstr "" +msgstr "ã¤ã¶ã‚„ã検索" #: actions/othersettings.php:60 -#, fuzzy msgid "Other Settings" -msgstr "è¨å®š" +msgstr "ãã®ä»–ã®è¨å®š" #: actions/othersettings.php:71 msgid "Manage various other options." -msgstr "" +msgstr "ä»–ã®ã‚ªãƒ—ションを管ç†ã€‚" #: actions/othersettings.php:108 msgid " (free service)" -msgstr "" +msgstr "(フリーサービス)" #: actions/othersettings.php:116 msgid "Shorten URLs with" -msgstr "" +msgstr "URLã‚’çŸãã—ã¾ã™" #: actions/othersettings.php:117 msgid "Automatic shortening service to use." -msgstr "" +msgstr "使用ã™ã‚‹è‡ªå‹•çŸç¸®ã‚µãƒ¼ãƒ“ス。" #: actions/othersettings.php:122 -#, fuzzy msgid "View profile designs" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«è¨å®š" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãƒ‡ã‚¶ã‚¤ãƒ³ã‚’表示" #: actions/othersettings.php:123 msgid "Show or hide profile designs." -msgstr "" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãƒ‡ã‚¶ã‚¤ãƒ³ã®è¡¨ç¤ºã¾ãŸã¯éžè¡¨ç¤º" #: actions/othersettings.php:153 -#, fuzzy msgid "URL shortening service is too long (max 50 chars)." -msgstr "å ´æ‰€ãŒé•·ã™ãŽã¾ã™ã€‚(255å—ã¾ã§ï¼‰" +msgstr "URL çŸç¸®ã‚µãƒ¼ãƒ“スãŒé•·ã™ãŽã¾ã™ã€‚(最大50å—)" #: actions/outbox.php:58 #, php-format msgid "Outbox for %s - page %d" -msgstr "" +msgstr "%s ã®é€ä¿¡ç®± - ページ %d" #: actions/outbox.php:61 #, php-format msgid "Outbox for %s" -msgstr "" +msgstr "%s ã®é€ä¿¡ç®±" #: actions/outbox.php:116 msgid "This is your outbox, which lists private messages you have sent." msgstr "" +"ã“ã‚Œã¯ã‚ãªãŸã®é€ä¿¡ç®±ã§ã™ã€ã‚ãªãŸãŒé€ã£ãŸãƒ—ライベート・メッセージをリストã—ã¾" +"ã™ã€‚" #: actions/passwordsettings.php:58 msgid "Change password" @@ -2146,7 +2142,7 @@ msgstr "パスワードを変更ã—ã¾ã™ã€‚" #: actions/passwordsettings.php:96 actions/recoverpassword.php:231 msgid "Password change" -msgstr "パスワードã®å¤‰æ›´" +msgstr "パスワード変更" #: actions/passwordsettings.php:104 msgid "Old password" @@ -2163,7 +2159,7 @@ msgstr "6æ–‡å—以上" #: actions/passwordsettings.php:112 actions/recoverpassword.php:239 #: actions/register.php:432 actions/smssettings.php:134 msgid "Confirm" -msgstr "確èª" +msgstr "パスワード確èª" #: actions/passwordsettings.php:113 actions/recoverpassword.php:240 msgid "Same as password above" @@ -2199,148 +2195,140 @@ msgstr "パスワードãŒä¿å˜ã•ã‚Œã¾ã—ãŸã€‚" #: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:308 msgid "Paths" -msgstr "" +msgstr "パス" #: actions/pathsadminpanel.php:70 msgid "Path and server settings for this StatusNet site." -msgstr "" +msgstr "パス㨠StatusNet サイトã®ã‚µãƒ¼ãƒãƒ¼è¨å®š" #: actions/pathsadminpanel.php:140 -#, fuzzy, php-format +#, php-format msgid "Theme directory not readable: %s" -msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã¯ã‚ãªãŸãŒæ‰¿èªã—ãŸãƒ¡ãƒ‡ã‚£ã‚¢ã‚¿ã‚¤ãƒ—ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" +msgstr "テーマディレクトリãŒèªã¿è¾¼ã‚ã¾ã›ã‚“: %s" #: actions/pathsadminpanel.php:146 #, php-format msgid "Avatar directory not writable: %s" -msgstr "" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ›¸ãè¾¼ã¿ã§ãã¾ã›ã‚“: %s" #: actions/pathsadminpanel.php:152 #, php-format msgid "Background directory not writable: %s" -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ›¸ãè¾¼ã¿ã§ãã¾ã›ã‚“ : %s" #: actions/pathsadminpanel.php:160 #, php-format msgid "Locales directory not readable: %s" -msgstr "" +msgstr "å ´æ‰€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒèªã¿è¾¼ã‚ã¾ã›ã‚“: %s" #: actions/pathsadminpanel.php:166 msgid "Invalid SSL server. The maximum length is 255 characters." -msgstr "" +msgstr "ä¸æ£ãª SSL サーãƒãƒ¼ã€‚最大 255 æ–‡å—ã¾ã§ã€‚" #: actions/pathsadminpanel.php:217 actions/siteadminpanel.php:58 #: lib/adminpanelaction.php:299 msgid "Site" -msgstr "" +msgstr "サイト" #: actions/pathsadminpanel.php:221 msgid "Path" -msgstr "" +msgstr "パス" #: actions/pathsadminpanel.php:221 -#, fuzzy msgid "Site path" -msgstr "æ–°ã—ã„通知" +msgstr "サイトパス" #: actions/pathsadminpanel.php:225 msgid "Path to locales" -msgstr "" +msgstr "ãƒã‚±ãƒ¼ãƒ«ã®ãƒ‘ス" #: actions/pathsadminpanel.php:225 msgid "Directory path to locales" -msgstr "" +msgstr "ãƒã‚±ãƒ¼ãƒ«ã¸ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ‘ス" #: actions/pathsadminpanel.php:232 msgid "Theme" -msgstr "" +msgstr "テーマ" #: actions/pathsadminpanel.php:237 msgid "Theme server" -msgstr "" +msgstr "テーマサーãƒãƒ¼" #: actions/pathsadminpanel.php:241 msgid "Theme path" -msgstr "" +msgstr "テーマパス" #: actions/pathsadminpanel.php:245 msgid "Theme directory" -msgstr "" +msgstr "テーマディレクトリ" #: actions/pathsadminpanel.php:252 -#, fuzzy msgid "Avatars" msgstr "ã‚¢ãƒã‚¿ãƒ¼" #: actions/pathsadminpanel.php:257 -#, fuzzy msgid "Avatar server" -msgstr "è¨å®š" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ã‚µãƒ¼ãƒãƒ¼" #: actions/pathsadminpanel.php:261 -#, fuzzy msgid "Avatar path" -msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒæ›´æ–°ã•ã‚Œã¾ã—ãŸã€‚" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ãƒ‘ス" #: actions/pathsadminpanel.php:265 -#, fuzzy msgid "Avatar directory" -msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒæ›´æ–°ã•ã‚Œã¾ã—ãŸã€‚" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª" #: actions/pathsadminpanel.php:274 msgid "Backgrounds" -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰" #: actions/pathsadminpanel.php:278 msgid "Background server" -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚µãƒ¼ãƒãƒ¼" #: actions/pathsadminpanel.php:282 msgid "Background path" -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ‘ス" #: actions/pathsadminpanel.php:286 msgid "Background directory" -msgstr "" +msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª" #: actions/pathsadminpanel.php:293 msgid "SSL" -msgstr "" +msgstr "SSL" #: actions/pathsadminpanel.php:296 actions/siteadminpanel.php:346 -#, fuzzy msgid "Never" -msgstr "回復" +msgstr "" #: actions/pathsadminpanel.php:297 -#, fuzzy msgid "Sometimes" -msgstr "通知" +msgstr "ã¨ãã©ã" #: actions/pathsadminpanel.php:298 msgid "Always" -msgstr "" +msgstr "ã„ã¤ã‚‚" #: actions/pathsadminpanel.php:302 msgid "Use SSL" -msgstr "" +msgstr "SSL 使用" #: actions/pathsadminpanel.php:303 msgid "When to use SSL" -msgstr "" +msgstr "SSL 使用時" #: actions/pathsadminpanel.php:308 msgid "SSL Server" -msgstr "" +msgstr "SSLサーãƒ" #: actions/pathsadminpanel.php:309 msgid "Server to direct SSL requests to" -msgstr "" +msgstr "ダイレクト SSL リクエストをå‘ã‘るサーãƒ" #: actions/pathsadminpanel.php:325 -#, fuzzy msgid "Save paths" -msgstr "æ–°ã—ã„通知" +msgstr "ä¿å˜ãƒ‘ス" #: actions/peoplesearch.php:52 #, php-format @@ -2348,30 +2336,31 @@ msgid "" "Search for people on %%site.name%% by their name, location, or interests. " "Separate the terms by spaces; they must be 3 characters or more." msgstr "" -"%%site.name%% ã®äººã‚’åå‰ã€å ´æ‰€ã€èˆˆå‘³ã‹ã‚‰æ¤œç´¢ã€‚検索語ã¯ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡ã‚‹ã€‚3å—以上" +"%%site.name%% ã®äººã‚’åå‰ã€å ´æ‰€ã€èˆˆå‘³ã‹ã‚‰æ¤œç´¢ã€‚検索語ã¯ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡ã‚Šã€‚3å—以" +"上。" #: actions/peoplesearch.php:58 msgid "People search" msgstr "ピープルサーãƒ" #: actions/peopletag.php:70 -#, fuzzy, php-format +#, php-format msgid "Not a valid people tag: %s" -msgstr "有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "æ£ã—ã„ã‚¿ã‚°ã§ã¯ã‚ã‚Šã¾ã›ã‚“: %s" #: actions/peopletag.php:144 #, php-format msgid "Users self-tagged with %s - page %d" -msgstr "" +msgstr "ユーザãŒã¤ã‘ãŸã‚¿ã‚° %s - ページ %d" #: actions/postnotice.php:84 msgid "Invalid notice content" -msgstr "ä¸æ£ãªé€šçŸ¥å†…容" +msgstr "ä¸æ£ãªã¤ã¶ã‚„ã内容" #: actions/postnotice.php:90 #, php-format msgid "Notice license ‘%s’ is not compatible with site license ‘%s’." -msgstr "" +msgstr "ã¤ã¶ã‚„ãライセンス ‘%s’ ã¯ã‚µã‚¤ãƒˆãƒ©ã‚¤ã‚»ãƒ³ã‚¹ ‘%s’ ã¨äº’æ›æ€§ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/profilesettings.php:60 msgid "Profile settings" @@ -2385,9 +2374,8 @@ msgstr "" "ã™ã€‚" #: actions/profilesettings.php:99 -#, fuzzy msgid "Profile information" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒä¸æ˜Ž" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«æƒ…å ±" #: actions/profilesettings.php:108 lib/groupeditform.php:154 msgid "1-64 lowercase letters or numbers, no punctuation or spaces" @@ -2430,109 +2418,114 @@ msgstr "å ´æ‰€" #: actions/profilesettings.php:134 actions/register.php:472 msgid "Where you are, like \"City, State (or Region), Country\"" -msgstr "自分ã®ã„ã‚‹å ´æ‰€ã€‚ä¾‹ï¼šã€Œéƒ½å¸‚, å·ž (ã¾ãŸã¯åœ°åŸŸ), 国ã€" +msgstr "自分ã®ã„ã‚‹å ´æ‰€ã€‚ä¾‹ï¼šã€Œéƒ½å¸‚, 都é“府県 (ã¾ãŸã¯åœ°åŸŸ), 国ã€" + +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "ã¤ã¶ã‚„ãを投稿ã™ã‚‹ã¨ãã«ã¯ç§ã®ç¾åœ¨ã®å ´æ‰€ã‚’共有ã—ã¦ãã ã•ã„" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "ã‚¿ã‚°" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -"自分自身ã«ã¤ã„ã¦ã®ã‚¿ã‚° (アルファベットï¼æ•°å—ï¼-ï¼.ï¼_)ã€ã‚«ãƒ³ãƒžã¾ãŸã¯ç©ºç™½åŒºåˆ‡" +"自分自身ã«ã¤ã„ã¦ã®ã‚¿ã‚° (アルファベットã€æ•°å—ã€-ã€.ã€_)ã€ã‚«ãƒ³ãƒžã¾ãŸã¯ç©ºç™½åŒºåˆ‡" "ã‚Šã§" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "言語" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "ã”希望ã®è¨€èªž" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "タイムゾーン" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "普段ã®ã‚¿ã‚¤ãƒ ゾーンã¯ã©ã‚Œã§ã™ã‹ï¼Ÿ" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" -msgstr "自分を購èªã—ã¦ã„る者を自動的ã«è³¼èªã™ã‚‹ (éžäººé–“ã«æœ€é©)" +msgstr "自分をフォãƒãƒ¼ã—ã¦ã„る者を自動的ã«ãƒ•ã‚©ãƒãƒ¼ã™ã‚‹ (BOTã«æœ€é©)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "自己紹介ãŒé•·ã™ãŽã¾ã™ (最長140æ–‡å—)。" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." -msgstr "" +msgstr "タイムゾーンãŒé¸ã°ã‚Œã¦ã„ã¾ã›ã‚“。" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." -msgstr "" +msgstr "言語ãŒé•·ã™ãŽã¾ã™ã€‚(最大50å—)" -#: actions/profilesettings.php:246 actions/tagother.php:178 -#, fuzzy, php-format +#: actions/profilesettings.php:253 actions/tagother.php:178 +#, php-format msgid "Invalid tag: \"%s\"" -msgstr "ä¸æ£ãªãƒ›ãƒ¼ãƒ ページ '%s'" +msgstr "ä¸æ£ãªã‚¿ã‚°: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." -msgstr "" +msgstr "自動フォãƒãƒ¼ã®ãŸã‚ã®åˆ©ç”¨è€…ã‚’æ›´æ–°ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "å ´æ‰€æƒ…å ±ã‚’ä¿å˜ã§ãã¾ã›ã‚“。" + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿å˜ã§ãã¾ã›ã‚“" -#: actions/profilesettings.php:336 -#, fuzzy +#: actions/profilesettings.php:374 msgid "Couldn't save tags." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿å˜ã§ãã¾ã›ã‚“" +msgstr "ã‚¿ã‚°ã‚’ä¿å˜ã§ãã¾ã›ã‚“。" -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "è¨å®šãŒä¿å˜ã•ã‚Œã¾ã—ãŸã€‚" #: actions/public.php:83 #, php-format msgid "Beyond the page limit (%s)" -msgstr "" +msgstr "ページ制é™ã‚’超ãˆã¾ã—㟠(%s)" #: actions/public.php:92 msgid "Could not retrieve public stream." -msgstr "" +msgstr "パブリックストリームを検索ã§ãã¾ã›ã‚“。" #: actions/public.php:129 -#, fuzzy, php-format +#, php-format msgid "Public timeline, page %d" -msgstr "パブリックタイムライン" +msgstr "パブリックタイムラインã€ãƒšãƒ¼ã‚¸ %d" #: actions/public.php:131 lib/publicgroupnav.php:79 msgid "Public timeline" msgstr "パブリックタイムライン" #: actions/public.php:151 -#, fuzzy msgid "Public Stream Feed (RSS 1.0)" -msgstr "パブリックフィード" +msgstr "パブリックストリームフィード (RSS 1.0)" #: actions/public.php:155 -#, fuzzy msgid "Public Stream Feed (RSS 2.0)" -msgstr "パブリックフィード" +msgstr "パブリックストリームフィード (RSS 2.0)" #: actions/public.php:159 -#, fuzzy msgid "Public Stream Feed (Atom)" -msgstr "パブリックフィード" +msgstr "パブリックストリームフィード (Atom)" #: actions/public.php:179 #, php-format @@ -2540,16 +2533,20 @@ msgid "" "This is the public timeline for %%site.name%% but no one has posted anything " "yet." msgstr "" +"ã“れ㯠%%site.name%% ã®ãƒ‘ブリックタイムラインã§ã™ã€ã—ã‹ã—ã¾ã 誰も投稿ã—ã¦ã„ã¾" +"ã›ã‚“。" #: actions/public.php:182 msgid "Be the first to post!" -msgstr "" +msgstr "投稿ã™ã‚‹1番目ã«ãªã£ã¦ãã ã•ã„!" #: actions/public.php:186 #, php-format msgid "" "Why not [register an account](%%action.register%%) and be the first to post!" msgstr "" +"ãªãœ [アカウント登録](%%action.register%%) ã—ãªã„ã®ã§ã™ã‹ã€ãã—ã¦æœ€åˆã®æŠ•ç¨¿ã‚’" +"ã—ã¦ãã ã•ã„!" #: actions/public.php:233 #, php-format @@ -2559,6 +2556,11 @@ msgid "" "tool. [Join now](%%action.register%%) to share notices about yourself with " "friends, family, and colleagues! ([Read more](%%doc.help%%))" msgstr "" +"ã“れ㯠%%site.name%% ã§ã™ã€‚フリーソフトウェアツール[StatusNet](http://status." +"net/)を基ã«ã—ãŸ[マイクãƒãƒ–ãƒã‚®ãƒ³ã‚°](http://en.wikipedia.org/wiki/Micro-" +"blogging) サービス。[今ã™ãå‚åŠ ](%%action.register%%)ã—ã¦ã‚ãªãŸè‡ªèº«ã‚„å‹é”ã€å®¶" +"æ—ãã—ã¦åŒåƒšãªã©ã«ã¤ã„ã¦ã®ã¤ã¶ã‚„ãを共有ã—ã¾ã—ょã†! ([ã‚‚ã£ã¨èªã‚€](%%doc.help%" +"%))" #: actions/public.php:238 #, php-format @@ -2567,25 +2569,28 @@ msgid "" "blogging) service based on the Free Software [StatusNet](http://status.net/) " "tool." msgstr "" +"ã“れ㯠%%site.name%% ã§ã™ã€‚フリーソフトウェアツール[StatusNet](http://status." +"net/)を基ã«ã—ãŸ[マイクãƒãƒ–ãƒã‚®ãƒ³ã‚°](http://en.wikipedia.org/wiki/Micro-" +"blogging) サービス。" #: actions/publictagcloud.php:57 -#, fuzzy msgid "Public tag cloud" -msgstr "パブリックフィード" +msgstr "パブリックタグクラウド" #: actions/publictagcloud.php:63 #, php-format msgid "These are most popular recent tags on %s " -msgstr "" +msgstr "ã“れら㯠%s ã®äººæ°—ãŒã‚る最近ã®ã‚¿ã‚°ã§ã™ " #: actions/publictagcloud.php:69 #, php-format msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet." msgstr "" +"ã¾ã ã れも [ãƒãƒƒã‚·ãƒ¥ã‚¿ã‚°](%%doc.tags%%) 付ãã®ã¤ã¶ã‚„ãを投稿ã—ã¦ã„ã¾ã›ã‚“。" #: actions/publictagcloud.php:72 msgid "Be the first to post one!" -msgstr "" +msgstr "投稿ã™ã‚‹1番目ã«ãªã£ã¦ãã ã•ã„!" #: actions/publictagcloud.php:75 #, php-format @@ -2593,10 +2598,12 @@ msgid "" "Why not [register an account](%%action.register%%) and be the first to post " "one!" msgstr "" +"ãªãœ [アカウント登録](%%action.register%%) ã—ãªã„ã®ã§ã™ã‹ã€‚ãã—ã¦æœ€åˆã®æŠ•ç¨¿ã‚’" +"ã—ã¦ãã ã•ã„!" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" -msgstr "" +msgstr "タグクラウド" #: actions/recoverpassword.php:36 msgid "You are already logged in!" @@ -2624,25 +2631,27 @@ msgstr "確èªã‚³ãƒ¼ãƒ‰ãŒå¤ã™ãŽã¾ã™ã€‚ã‚‚ã†ä¸€åº¦ã‚„ã‚Šç›´ã—ã¦ãã ã• #: actions/recoverpassword.php:111 msgid "Could not update user with confirmed email address." -msgstr "" +msgstr "確èªã•ã‚ŒãŸãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§åˆ©ç”¨è€…ã‚’æ›´æ–°ã§ãã¾ã›ã‚“。" #: actions/recoverpassword.php:152 msgid "" "If you have forgotten or lost your password, you can get a new one sent to " "the email address you have stored in your account." msgstr "" +"ã‚ãªãŸã®ãƒ‘スワードを忘れるã‹ç´›å¤±ã—ãŸãªã‚‰ã€ã‚ãªãŸã¯ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«æ ¼ç´ã—ãŸãƒ¡ãƒ¼ãƒ«" +"アドレスã«æ–°ã—ã„ã‚‚ã®ã‚’é€ã‚‰ã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" #: actions/recoverpassword.php:158 msgid "You have been identified. Enter a new password below. " -msgstr "" +msgstr "ã‚ãªãŸã¯ç‰¹å®šã•ã‚Œã¾ã—ãŸã€‚ 以下ã®æ–°ã—ã„パスワードを入力ã—ã¦ãã ã•ã„。 " #: actions/recoverpassword.php:188 msgid "Password recovery" -msgstr "" +msgstr "パスワード回復" #: actions/recoverpassword.php:191 msgid "Nickname or email address" -msgstr "" +msgstr "ニックãƒãƒ¼ãƒ ã¾ãŸã¯ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹" #: actions/recoverpassword.php:193 msgid "Your nickname on this server, or your registered email address." @@ -2662,11 +2671,11 @@ msgstr "パスワードを回復" #: actions/recoverpassword.php:210 actions/recoverpassword.php:322 msgid "Password recovery requested" -msgstr "パスワード回復ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã•ã‚Œã¾ã—ãŸ" +msgstr "パスワード回復ãŒãƒªã‚¯ã‚¨ã‚¹ãƒˆã•ã‚Œã¾ã—ãŸ" #: actions/recoverpassword.php:213 msgid "Unknown action" -msgstr "" +msgstr "ä¸æ˜Žãªã‚¢ã‚¯ã‚·ãƒ§ãƒ³" #: actions/recoverpassword.php:236 msgid "6 or more characters, and don't forget it!" @@ -2682,11 +2691,11 @@ msgstr "ニックãƒãƒ¼ãƒ ã‹ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„。 #: actions/recoverpassword.php:272 msgid "No user with that email address or username." -msgstr "" +msgstr "ãã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‹ãƒ¦ãƒ¼ã‚¶åã‚’ã‚‚ã£ã¦ã„る利用者ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/recoverpassword.php:287 msgid "No registered email address for that user." -msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ã«ã¯ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®ç™»éŒ²ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "ãã®åˆ©ç”¨è€…ã«ã¯ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®ç™»éŒ²ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/recoverpassword.php:301 msgid "Error saving address confirmation." @@ -2696,7 +2705,7 @@ msgstr "アドレス確èªä¿å˜ã‚¨ãƒ©ãƒ¼" msgid "" "Instructions for recovering your password have been sent to the email " "address registered to your account." -msgstr "登録ã•ã‚ŒãŸãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã«ãƒ‘スワードã®å›žå¾©æ–¹æ³•ã‚’ãŠãŠãã‚Šã—ã¾ã—ãŸã€‚" +msgstr "登録ã•ã‚ŒãŸãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã«ãƒ‘スワードã®å›žå¾©æ–¹æ³•ã‚’ãŠé€ã‚Šã—ã¾ã—ãŸã€‚" #: actions/recoverpassword.php:344 msgid "Unexpected password reset." @@ -2720,25 +2729,24 @@ msgstr "æ–°ã—ã„パスワードã®ä¿å˜ã«æˆåŠŸã—ã¾ã—ãŸã€‚ãƒã‚°ã‚¤ãƒ³ã— #: actions/register.php:85 actions/register.php:189 actions/register.php:404 msgid "Sorry, only invited people can register." -msgstr "" +msgstr "ã™ã¿ã¾ã›ã‚“ã€æ‹›å¾…ã•ã‚ŒãŸäººã€…ã ã‘ãŒç™»éŒ²ã§ãã¾ã™ã€‚" #: actions/register.php:92 -#, fuzzy msgid "Sorry, invalid invitation code." -msgstr "確èªã‚³ãƒ¼ãƒ‰ã«ã‚¨ãƒ©ãƒ¼ãŒã‚ã‚Šã¾ã™ã€‚" +msgstr "ã™ã¿ã¾ã›ã‚“ã€ä¸æ£ãªæ‹›å¾…コード。" #: actions/register.php:112 msgid "Registration successful" -msgstr "" +msgstr "登録æˆåŠŸ" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "登録" #: actions/register.php:135 msgid "Registration not allowed." -msgstr "" +msgstr "登録ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: actions/register.php:198 msgid "You can't register if you don't agree to the license." @@ -2761,6 +2769,8 @@ msgid "" "With this form you can create a new account. You can then post notices and " "link up to friends and colleagues. " msgstr "" +"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§æ–°ã—ã„アカウントを作æˆã§ãã¾ã™ã€‚ 次ã«ã¤ã¶ã‚„ãを投稿ã—ã¦ã€å‹äººã‚„" +"åŒåƒšã«ãƒªãƒ³ã‚¯ã§ãã¾ã™ã€‚ " #: actions/register.php:424 msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required." @@ -2773,7 +2783,7 @@ msgstr "6æ–‡å—ä»¥ä¸Šã€‚å¿…é ˆã§ã™ã€‚" #: actions/register.php:433 msgid "Same as password above. Required." -msgstr "" +msgstr "上ã®ãƒ‘スワードã¨åŒã˜ã§ã™ã€‚ å¿…é ˆã€‚" #: actions/register.php:437 actions/register.php:441 #: actions/siteadminpanel.php:270 lib/accountsettingsaction.php:120 @@ -2786,22 +2796,21 @@ msgstr "æ›´æ–°ã€ã‚¢ãƒŠã‚¦ãƒ³ã‚¹ã€ãƒ‘スワードリカãƒãƒªãƒ¼ã§ã®ã¿ä½¿ç”¨ #: actions/register.php:449 msgid "Longer name, preferably your \"real\" name" -msgstr "" +msgstr "é•·ã„åå‰" #: actions/register.php:493 msgid "My text and files are available under " -msgstr "ã®ä¸‹ã§ãƒ†ã‚ストåŠã³ãƒ•ã‚¡ã‚¤ãƒ«ã‚’利用å¯èƒ½" +msgstr "次ã®ä¸‹ã§ãƒ†ã‚ストåŠã³ãƒ•ã‚¡ã‚¤ãƒ«ã‚’利用å¯èƒ½ " #: actions/register.php:495 msgid "Creative Commons Attribution 3.0" msgstr "" #: actions/register.php:496 -#, fuzzy msgid "" " except this private data: password, email address, IM address, and phone " "number." -msgstr "å€‹äººæƒ…å ±ã‚’é™¤ã:パスワードã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã€IMアドレスã€é›»è©±ç•ªå·" +msgstr "å€‹äººæƒ…å ±ã‚’é™¤ã: パスワードã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã€IMアドレスã€é›»è©±ç•ªå·" #: actions/register.php:537 #, php-format @@ -2851,23 +2860,22 @@ msgid "" "register%%) a new account. If you already have an account on a [compatible " "microblogging site](%%doc.openmublog%%), enter your profile URL below." msgstr "" -"サブスクライブã™ã‚‹ã«ã¯ã€[ãƒã‚°ã‚¤ãƒ³](%%action.login%%) ã™ã‚‹ã‹, [登録](%%action." +"フォãƒãƒ¼ã™ã‚‹ã«ã¯ã€[ãƒã‚°ã‚¤ãƒ³](%%action.login%%) ã™ã‚‹ã‹, [登録](%%action." "register%%) ã‚’è¡Œã£ã¦ä¸‹ã•ã„。既㫠[compatible microblogging site](%%doc." -"openmublog%%) ã«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’æŒã£ãŠã‚‚ã¡ã®å ´åˆã¯ã€ä¸‹ã«ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«URLを入力ã—ã¦" -"下ã•ã„." +"openmublog%%) ã«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’ãŠæŒã¡ã®å ´åˆã¯ã€ä¸‹ã«ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«URLを入力ã—ã¦ä¸‹ã•" +"ã„." #: actions/remotesubscribe.php:112 msgid "Remote subscribe" -msgstr "リモートサブスクライブ" +msgstr "リモートフォãƒãƒ¼" #: actions/remotesubscribe.php:124 -#, fuzzy msgid "Subscribe to a remote user" -msgstr "è³¼èªãŒè¨±å¯" +msgstr "リモートユーザーをフォãƒãƒ¼" #: actions/remotesubscribe.php:129 msgid "User nickname" -msgstr "ユーザã®ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ " +msgstr "利用者ã®ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ " #: actions/remotesubscribe.php:130 msgid "Nickname of the user you want to follow" @@ -2884,54 +2892,50 @@ msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ã‚µãƒ¼ãƒ“スã¾ãŸã¯ãƒžã‚¤ã‚¯ãƒãƒ–ãƒã‚®ãƒ³ã‚°ã‚µãƒ¼ #: actions/remotesubscribe.php:137 lib/subscribeform.php:139 #: lib/userprofile.php:365 msgid "Subscribe" -msgstr "è³¼èª" +msgstr "フォãƒãƒ¼" #: actions/remotesubscribe.php:159 msgid "Invalid profile URL (bad format)" msgstr "ä¸æ£ãªãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«URL。(形å¼ä¸å‚™ï¼‰" #: actions/remotesubscribe.php:168 -#, fuzzy msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)." -msgstr "有効ãªãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«URLã§ã¯ã‚ã‚Šã¾ã›ã‚“。(XRDSドã‚ュメントãŒç„¡ã„)" +msgstr "" +"有効ãªãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«URLã§ã¯ã‚ã‚Šã¾ã›ã‚“。(YADIS ドã‚ュメントãŒãªã„ã‹ã¾ãŸã¯ ä¸æ£" +"㪠XRDS 定義)" #: actions/remotesubscribe.php:176 msgid "That’s a local profile! Login to subscribe." msgstr "" +"ãã‚Œã¯ãƒãƒ¼ã‚«ãƒ«ã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã§ã™! フォãƒãƒ¼ã™ã‚‹ã«ã¯ã€ãƒã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„。" #: actions/remotesubscribe.php:183 -#, fuzzy msgid "Couldn’t get a request token." msgstr "リクエストトークンをå–å¾—ã§ãã¾ã›ã‚“" #: actions/repeat.php:57 msgid "Only logged-in users can repeat notices." -msgstr "" +msgstr "ãƒã‚°ã‚¤ãƒ³ãƒ¦ãƒ¼ã‚¶ã ã‘ãŒã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã›ã¾ã™ã€‚" #: actions/repeat.php:64 actions/repeat.php:71 -#, fuzzy msgid "No notice specified." -msgstr "æ–°ã—ã„通知" +msgstr "ã¤ã¶ã‚„ããŒã‚ã‚Šã¾ã›ã‚“。" #: actions/repeat.php:76 -#, fuzzy msgid "You can't repeat your own notice." -msgstr "ライセンスã«åŒæ„é ‚ã‘ãªã„å ´åˆã¯ç™»éŒ²ã§ãã¾ã›ã‚“。" +msgstr "自分ã®ã¤ã¶ã‚„ãã¯ç¹°ã‚Šè¿”ã›ã¾ã›ã‚“。" #: actions/repeat.php:90 -#, fuzzy msgid "You already repeated that notice." -msgstr "æ—¢ã«ãƒã‚°ã‚¤ãƒ³æ¸ˆã¿ã§ã™ã€‚" +msgstr "ã™ã§ã«ãã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¦ã„ã¾ã™ã€‚" -#: actions/repeat.php:114 lib/noticelist.php:621 -#, fuzzy +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" -msgstr "作æˆ" +msgstr "ç¹°ã‚Šè¿”ã•ã‚ŒãŸ" #: actions/repeat.php:119 -#, fuzzy msgid "Repeated!" -msgstr "作æˆ" +msgstr "ç¹°ã‚Šè¿”ã•ã‚Œã¾ã—ãŸ!" #: actions/replies.php:125 actions/repliesrss.php:68 #: lib/personalgroupnav.php:105 @@ -2940,24 +2944,24 @@ msgid "Replies to %s" msgstr "%s ã¸ã®è¿”ä¿¡" #: actions/replies.php:127 -#, fuzzy, php-format +#, php-format msgid "Replies to %s, page %d" -msgstr "%s ã¸ã®è¿”ä¿¡" +msgstr "%s ã¸ã®è¿”ä¿¡ã€ãƒšãƒ¼ã‚¸ %d" #: actions/replies.php:144 -#, fuzzy, php-format +#, php-format msgid "Replies feed for %s (RSS 1.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã®è¿”信フィード (RSS 1.0)" #: actions/replies.php:151 -#, fuzzy, php-format +#, php-format msgid "Replies feed for %s (RSS 2.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã®è¿”信フィード (RSS 2.0)" #: actions/replies.php:158 -#, fuzzy, php-format +#, php-format msgid "Replies feed for %s (Atom)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã®è¿”信フィード (Atom)" #: actions/replies.php:198 #, php-format @@ -2965,6 +2969,8 @@ msgid "" "This is the timeline showing replies to %s but %s hasn't received a notice " "to his attention yet." msgstr "" +"ã“れ㯠%s ã¸ã®è¿”信を表示ã—ãŸã‚¿ã‚¤ãƒ ラインã§ã™ã€ã—ã‹ã— %s ã¯ã¾ã ã¤ã¶ã‚„ãã‚’å—ã‘" +"å–ã£ã¦ã„ã¾ã›ã‚“。" #: actions/replies.php:203 #, php-format @@ -2972,6 +2978,8 @@ msgid "" "You can engage other users in a conversation, subscribe to more people or " "[join groups](%%action.groups%%)." msgstr "" +"ã‚ãªãŸã¯ã€ä»–ã®ãƒ¦ãƒ¼ã‚¶ã‚’会話をã™ã‚‹ã‹ã€å¤šãã®äººã€…をフォãƒãƒ¼ã™ã‚‹ã‹ã€ã¾ãŸã¯ [ã‚°" +"ループã«åŠ ã‚ã‚‹] (%%action.groups%%)ã“ã¨ãŒã§ãã¾ã™ã€‚" #: actions/replies.php:205 #, php-format @@ -2979,51 +2987,54 @@ msgid "" "You can try to [nudge %s](../%s) or [post something to his or her attention]" "(%%%%action.newnotice%%%%?status_textarea=%s)." msgstr "" +"ã‚ãªãŸã¯ [åˆå›³ %s](../%s) ã™ã‚‹ã‹ã€[ãã®äººå®›ã¦ã«ä½•ã‹ã‚’投稿](%%%%action." +"newnotice%%%%?status_textarea=%s)ã—ã¦ãã ã•ã„。" #: actions/repliesrss.php:72 -#, fuzzy, php-format +#, php-format msgid "Replies to %1$s on %2$s!" -msgstr "%s ã¸ã®è¿”ä¿¡" +msgstr "%2$s 上㮠%1$s ã¸ã®è¿”ä¿¡!" #: actions/sandbox.php:65 actions/unsandbox.php:65 -#, fuzzy msgid "You cannot sandbox users on this site." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã¯ã“ã®ã‚µã‚¤ãƒˆã®ã‚µãƒ³ãƒ‰ãƒœãƒƒã‚¯ã‚¹ãƒ¦ãƒ¼ã‚¶ãŒã§ãã¾ã›ã‚“。" #: actions/sandbox.php:72 -#, fuzzy msgid "User is already sandboxed." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者ã¯ã™ã§ã«ã‚µãƒ³ãƒ‰ãƒœãƒƒã‚¯ã‚¹ã§ã™ã€‚" #: actions/showfavorites.php:79 -#, fuzzy, php-format +#, php-format msgid "%s's favorite notices, page %d" -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "%s ã®ãŠæ°—ã«å…¥ã‚Šã®ã¤ã¶ã‚„ãã€ãƒšãƒ¼ã‚¸ %d" #: actions/showfavorites.php:132 msgid "Could not retrieve favorite notices." -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Šã®ã¤ã¶ã‚„ãを検索ã§ãã¾ã›ã‚“。" #: actions/showfavorites.php:170 -#, fuzzy, php-format +#, php-format msgid "Feed for favorites of %s (RSS 1.0)" -msgstr "%s ã®ã¨ã‚‚ã ã¡ã®ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã®ãŠæ°—ã«å…¥ã‚Šã®ãƒ•ã‚£ãƒ¼ãƒ‰ (RSS 1.0)" #: actions/showfavorites.php:177 -#, fuzzy, php-format +#, php-format msgid "Feed for favorites of %s (RSS 2.0)" -msgstr "%s ã®ã¨ã‚‚ã ã¡ã®ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã®ãŠæ°—ã«å…¥ã‚Šã®ãƒ•ã‚£ãƒ¼ãƒ‰ (RSS 2.0)" #: actions/showfavorites.php:184 -#, fuzzy, php-format +#, php-format msgid "Feed for favorites of %s (Atom)" -msgstr "%s ã®ã¨ã‚‚ã ã¡ã®ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã®ãŠæ°—ã«å…¥ã‚Šã®ãƒ•ã‚£ãƒ¼ãƒ‰ (Atom)" #: actions/showfavorites.php:205 msgid "" "You haven't chosen any favorite notices yet. Click the fave button on " "notices you like to bookmark them for later or shed a spotlight on them." msgstr "" +"ã‚ãªãŸã¯ã¾ã å°‘ã—ã®ãŠæ°—ã«å…¥ã‚Šã®ã¤ã¶ã‚„ãã‚‚é¸ã‚“ã§ã„ã¾ã›ã‚“。 後ã§ãƒ–ックマークを追" +"åŠ ã™ã‚‹ã‚ãªãŸãŒãれらãŒãŠæ°—ã«å…¥ã‚Šã®ã¤ã¶ã‚„ãã®ã¨ãã«ãŠæ°—ã«å…¥ã‚Šãƒœã‚¿ãƒ³ã‚’クリック" +"ã™ã‚‹ã‹ã€ã¾ãŸã¯ãれらã®ä¸Šã§ã‚¹ãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã‚’ã¯ã˜ã„ã¦ãã ã•ã„。" #: actions/showfavorites.php:207 #, php-format @@ -3031,6 +3042,8 @@ msgid "" "%s hasn't added any notices to his favorites yet. Post something interesting " "they would add to their favorites :)" msgstr "" +"%s ã¯ã¾ã å½¼ã®ãŠæ°—ã«å…¥ã‚Šã«å°‘ã—ã®ã¤ã¶ã‚„ãã‚‚åŠ ãˆã¦ã„ã¾ã›ã‚“。 彼らãŒãŠæ°—ã«å…¥ã‚Šã«" +"åŠ ãˆã‚‹ã“ã¨ãŠã‚‚ã—ã‚ã„ã‚‚ã®ã‚’投稿ã—ã¦ãã ã•ã„:)" #: actions/showfavorites.php:211 #, php-format @@ -3039,88 +3052,87 @@ msgid "" "account](%%%%action.register%%%%) and then post something interesting they " "would add to their favorites :)" msgstr "" +"%s ã¯ã¾ã ãŠæ°—ã«å…¥ã‚Šã«å°‘ã—ã®ã¤ã¶ã‚„ãã‚‚åŠ ãˆã¦ã„ã¾ã›ã‚“。 ãªãœ [アカウント登録](%" +"%%%action.register%%%%) ã—ãªã„ã®ã§ã™ã‹ã€‚ãã—ã¦ã€å½¼ã‚‰ãŒãŠæ°—ã«å…¥ã‚Šã«åŠ ãˆã‚‹ãŠã‚‚" +"ã—ã‚ã„何ã‹ã‚’投稿ã—ã¾ã›ã‚“ã‹:)" #: actions/showfavorites.php:242 msgid "This is a way to share what you like." -msgstr "" +msgstr "ã“ã‚Œã¯ã€ã‚ãªãŸãŒå¥½ããªã“ã¨ã‚’共有ã™ã‚‹æ–¹æ³•ã§ã™ã€‚" #: actions/showgroup.php:82 lib/groupnav.php:86 #, php-format msgid "%s group" -msgstr "" +msgstr "%s グループ" #: actions/showgroup.php:84 #, php-format msgid "%s group, page %d" -msgstr "" +msgstr "%s グループã€ãƒšãƒ¼ã‚¸ %d" #: actions/showgroup.php:218 -#, fuzzy msgid "Group profile" -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "グループプãƒãƒ•ã‚¡ã‚¤ãƒ«" #: actions/showgroup.php:263 actions/tagother.php:118 #: actions/userauthorization.php:167 lib/userprofile.php:177 msgid "URL" -msgstr "" +msgstr "URL" #: actions/showgroup.php:274 actions/tagother.php:128 #: actions/userauthorization.php:179 lib/userprofile.php:194 -#, fuzzy msgid "Note" -msgstr "通知" +msgstr "ノート" #: actions/showgroup.php:284 lib/groupeditform.php:184 msgid "Aliases" -msgstr "" +msgstr "別å" #: actions/showgroup.php:293 msgid "Group actions" -msgstr "" +msgstr "グループアクション" #: actions/showgroup.php:328 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s group (RSS 1.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s グループã®ã¤ã¶ã‚„ãフィード (RSS 1.0)" #: actions/showgroup.php:334 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s group (RSS 2.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s グループã®ã¤ã¶ã‚„ãフィード (RSS 2.0)" #: actions/showgroup.php:340 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s group (Atom)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s グループã®ã¤ã¶ã‚„ãフィード (Atom)" #: actions/showgroup.php:345 -#, fuzzy, php-format +#, php-format msgid "FOAF for %s group" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s グループ㮠FOAF" #: actions/showgroup.php:381 actions/showgroup.php:438 lib/groupnav.php:91 -#, fuzzy msgid "Members" -msgstr "ã‹ã‚‰ã®ãƒ¡ãƒ³ãƒãƒ¼" +msgstr "メンãƒãƒ¼" #: actions/showgroup.php:386 lib/profileaction.php:117 #: lib/profileaction.php:148 lib/profileaction.php:236 lib/section.php:95 #: lib/tagcloudsection.php:71 msgid "(None)" -msgstr "" +msgstr "(ãªã—)" #: actions/showgroup.php:392 msgid "All members" -msgstr "" +msgstr "å…¨ã¦ã®ãƒ¡ãƒ³ãƒãƒ¼" #: actions/showgroup.php:429 lib/profileaction.php:174 msgid "Statistics" msgstr "統計データ" #: actions/showgroup.php:432 -#, fuzzy msgid "Created" -msgstr "作æˆ" +msgstr "作æˆã•ã‚Œã¾ã—ãŸ" #: actions/showgroup.php:448 #, php-format @@ -3131,6 +3143,11 @@ msgid "" "their life and interests. [Join now](%%%%action.register%%%%) to become part " "of this group and many more! ([Read more](%%%%doc.help%%%%))" msgstr "" +"**%s** 㯠%%site.name%% 上ã®ãƒ¦ãƒ¼ã‚¶ã‚°ãƒ«ãƒ¼ãƒ—ã§ã™ã€‚フリーソフトウェアツール" +"[StatusNet](http://status.net/)を基ã«ã—ãŸ[マイクãƒãƒ–ãƒã‚®ãƒ³ã‚°] (http://en." +"wikipedia.org/wiki/Micro-blogging) サービス。メンãƒãƒ¼ã¯å½¼ã‚‰ã®æš®ã‚‰ã—ã¨èˆˆå‘³ã«é–¢" +"ã™ã‚‹çŸã„メッセージを共有ã—ã¾ã™ã€‚[今ã™ãå‚åŠ ](%%%%action.register%%%%) ã—ã¦ã“" +"ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ä¸€å“¡ã«ãªã‚Šã¾ã—ょã†! ([ã‚‚ã£ã¨èªã‚€](%%%%doc.help%%%%))" #: actions/showgroup.php:454 #, php-format @@ -3140,80 +3157,84 @@ msgid "" "[StatusNet](http://status.net/) tool. Its members share short messages about " "their life and interests. " msgstr "" +"**%s** 㯠%%site.name%% 上ã®ãƒ¦ãƒ¼ã‚¶ã‚°ãƒ«ãƒ¼ãƒ—ã§ã™ã€‚フリーソフトウェアツール" +"[StatusNet](http://status.net/)を基ã«ã—ãŸ[マイクãƒãƒ–ãƒã‚®ãƒ³ã‚°](http://en." +"wikipedia.org/wiki/Micro-blogging) サービス。メンãƒãƒ¼ã¯å½¼ã‚‰ã®æš®ã‚‰ã—ã¨èˆˆå‘³ã«é–¢" +"ã™ã‚‹çŸã„メッセージを共有ã—ã¾ã™ã€‚" #: actions/showgroup.php:482 -#, fuzzy msgid "Admins" msgstr "管ç†è€…" #: actions/showmessage.php:81 msgid "No such message." -msgstr "" +msgstr "ãã®ã‚ˆã†ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/showmessage.php:98 msgid "Only the sender and recipient may read this message." -msgstr "" +msgstr "é€ä¿¡è€…ã¨å—å–人ã ã‘ãŒã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’èªã‚ã¾ã™ã€‚" #: actions/showmessage.php:108 #, php-format msgid "Message to %1$s on %2$s" -msgstr "" +msgstr "%2$s 上㮠%1$s ã¸ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" #: actions/showmessage.php:113 #, php-format msgid "Message from %1$s on %2$s" -msgstr "" +msgstr "%2$s 上㮠%1$s ã‹ã‚‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" #: actions/shownotice.php:90 -#, fuzzy msgid "Notice deleted." -msgstr "通知" +msgstr "ã¤ã¶ã‚„ãを削除ã—ã¾ã—ãŸã€‚" #: actions/showstream.php:73 #, php-format msgid " tagged %s" -msgstr "" +msgstr "タグ付ã‘ã•ã‚ŒãŸ %s" #: actions/showstream.php:79 #, php-format msgid "%s, page %d" -msgstr "" +msgstr "%sã€ãƒšãƒ¼ã‚¸ %d" #: actions/showstream.php:122 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s tagged %s (RSS 1.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%sã®%sã¨ã‚¿ã‚°ä»˜ã‘ã•ã‚ŒãŸã¤ã¶ã‚„ãフィード (RSS 1.0)" #: actions/showstream.php:129 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s (RSS 1.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%sã®ã¤ã¶ã‚„ãフィード (RSS 1.0)" #: actions/showstream.php:136 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s (RSS 2.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%sã®ã¤ã¶ã‚„ãフィード (RSS 2.0)" #: actions/showstream.php:143 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s (Atom)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%sã®ã¤ã¶ã‚„ãフィード (Atom)" #: actions/showstream.php:148 #, php-format msgid "FOAF for %s" -msgstr "" +msgstr "%s ã® FOAF" #: actions/showstream.php:191 #, php-format msgid "This is the timeline for %s but %s hasn't posted anything yet." -msgstr "" +msgstr "ã“れ㯠%s ã®ã‚¿ã‚¤ãƒ ラインã§ã™ãŒã€%s ã¯ã¾ã ãªã«ã‚‚投稿ã—ã¦ã„ã¾ã›ã‚“。" #: actions/showstream.php:196 msgid "" "Seen anything interesting recently? You haven't posted any notices yet, now " "would be a good time to start :)" msgstr "" +"最近ãŠã‚‚ã—ã‚ã„ã‚‚ã®ã¯ä½•ã§ã—ょã†? ã‚ãªãŸã¯å°‘ã—ã®ã¤ã¶ã‚„ãも投稿ã—ã¦ã„ã¾ã›ã‚“ãŒã€" +"ã„ã¾ã¯å§‹ã‚る良ã„時ã§ã—ょã†:)" #: actions/showstream.php:198 #, php-format @@ -3221,6 +3242,8 @@ msgid "" "You can try to nudge %s or [post something to his or her attention](%%%%" "action.newnotice%%%%?status_textarea=%s)." msgstr "" +"ã‚ãªãŸã¯ã€%s ã«åˆå›³ã™ã‚‹ã‹ã€[ã¾ãŸã¯ãã®äººå®›ã«ä½•ã‹ã‚’投稿](%%%%action.newnotice%" +"%%%?status_textarea=%s) ã—よã†ã¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" #: actions/showstream.php:234 #, php-format @@ -3230,6 +3253,11 @@ msgid "" "[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to " "follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))" msgstr "" +"**%s** 㯠%%site.name%% 上ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã§ã™ã€‚フリーソフトウェアツール" +"[StatusNet](http://status.net/)を基ã«ã—ãŸ[マイクãƒãƒ–ãƒã‚®ãƒ³ã‚°] (http://en." +"wikipedia.org/wiki/Micro-blogging) サービス。[今ã™ãå‚åŠ ](%%%%action.register" +"%%%%)ã—ã¦ã€**%s** ã®ã¤ã¶ã‚„ããªã©ã‚’フォãƒãƒ¼ã—ã¾ã—ょã†! ([ã‚‚ã£ã¨èªã‚€](%%%%doc." +"help%%%%))" #: actions/showstream.php:239 #, php-format @@ -3238,122 +3266,122 @@ msgid "" "wikipedia.org/wiki/Micro-blogging) service based on the Free Software " "[StatusNet](http://status.net/) tool. " msgstr "" +"**%s** 㯠%%site.name%% 上ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã§ã™ã€‚フリーソフトウェアツール" +"[StatusNet](http://status.net/)を基ã«ã—ãŸ[マイクãƒãƒ–ãƒã‚®ãƒ³ã‚°] (http://en." +"wikipedia.org/wiki/Micro-blogging) サービス。" #: actions/showstream.php:313 -#, fuzzy, php-format +#, php-format msgid "Repeat of %s" -msgstr "%s ã¸ã®è¿”ä¿¡" +msgstr "%s ã®ç¹°ã‚Šè¿”ã—" #: actions/silence.php:65 actions/unsilence.php:65 msgid "You cannot silence users on this site." -msgstr "" +msgstr "ã‚ãªãŸã¯ã“ã®ã‚µã‚¤ãƒˆã§ãƒ¦ãƒ¼ã‚¶ã‚’黙らã›ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。" #: actions/silence.php:72 -#, fuzzy msgid "User is already silenced." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者ã¯æ—¢ã«é»™ã£ã¦ã„ã¾ã™ã€‚" #: actions/siteadminpanel.php:69 msgid "Basic settings for this StatusNet site." -msgstr "" +msgstr "ã“ã® StatusNet サイトã®åŸºæœ¬è¨å®šã€‚" #: actions/siteadminpanel.php:146 msgid "Site name must have non-zero length." -msgstr "" +msgstr "サイトåã¯é•·ã•0ã§ã¯ã„ã‘ã¾ã›ã‚“。" #: actions/siteadminpanel.php:154 -#, fuzzy msgid "You must have a valid contact email address" -msgstr "有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "有効ãªé€£çµ¡ç”¨ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ãŒãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/siteadminpanel.php:172 #, php-format msgid "Unknown language \"%s\"" -msgstr "" +msgstr "ä¸æ˜Žãªè¨€èªž \"%s\"" #: actions/siteadminpanel.php:179 msgid "Invalid snapshot report URL." -msgstr "" +msgstr "ä¸æ£ãªã‚¹ãƒŠãƒƒãƒ—ショットレãƒãƒ¼ãƒˆURL。" #: actions/siteadminpanel.php:185 msgid "Invalid snapshot run value." -msgstr "" +msgstr "ä¸æ£ãªã‚¹ãƒŠãƒƒãƒ—ショットランãƒãƒªãƒ¥ãƒ¼" #: actions/siteadminpanel.php:191 msgid "Snapshot frequency must be a number." -msgstr "" +msgstr "ã‚¹ãƒŠãƒƒãƒ—ã‚·ãƒ§ãƒƒãƒˆé »åº¦ã¯æ•°ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/siteadminpanel.php:197 msgid "Minimum text limit is 140 characters." -msgstr "" +msgstr "最å°ã®ãƒ†ã‚スト制é™ã¯140å—ã§ã™ã€‚" #: actions/siteadminpanel.php:203 msgid "Dupe limit must 1 or more seconds." -msgstr "" +msgstr "デュープ制é™ã¯1秒以上ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。" #: actions/siteadminpanel.php:253 msgid "General" -msgstr "" +msgstr "一般" #: actions/siteadminpanel.php:256 -#, fuzzy msgid "Site name" -msgstr "æ–°ã—ã„通知" +msgstr "サイトå" #: actions/siteadminpanel.php:257 msgid "The name of your site, like \"Yourcompany Microblog\"" -msgstr "" +msgstr "ã‚ãªãŸã®ã‚µã‚¤ãƒˆã®åå‰ã€\"Yourcompany Microblog\"ã®ã‚ˆã†ãªã€‚" #: actions/siteadminpanel.php:261 msgid "Brought by" -msgstr "" +msgstr "æŒã£ã¦æ¥ã‚‰ã‚Œã¾ã™" #: actions/siteadminpanel.php:262 msgid "Text used for credits link in footer of each page" msgstr "" +"クレジットã«ä½¿ç”¨ã•ã‚Œã‚‹ãƒ†ã‚ストã¯ã€ãã‚Œãžã‚Œã®ãƒšãƒ¼ã‚¸ã®ãƒ•ãƒƒã‚¿ãƒ¼ã§ãƒªãƒ³ã‚¯ã•ã‚Œã¾" +"ã™ã€‚" #: actions/siteadminpanel.php:266 msgid "Brought by URL" -msgstr "" +msgstr "URLã§ã€æŒã£ã¦æ¥ã‚‰ã‚Œã¾ã™" #: actions/siteadminpanel.php:267 msgid "URL used for credits link in footer of each page" msgstr "" +"クレジットã«ä½¿ç”¨ã•ã‚Œã‚‹URLã¯ã€ãã‚Œãžã‚Œã®ãƒšãƒ¼ã‚¸ã®ãƒ•ãƒƒã‚¿ãƒ¼ã§ãƒªãƒ³ã‚¯ã•ã‚Œã¾ã™ã€‚" #: actions/siteadminpanel.php:271 -#, fuzzy msgid "Contact email address for your site" -msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ã«ã¯ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®ç™»éŒ²ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã®ã‚µã‚¤ãƒˆã«ã‚³ãƒ³ã‚¿ã‚¯ãƒˆã™ã‚‹ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹" #: actions/siteadminpanel.php:277 -#, fuzzy msgid "Local" -msgstr "å ´æ‰€" +msgstr "ãƒãƒ¼ã‚«ãƒ«" #: actions/siteadminpanel.php:288 msgid "Default timezone" -msgstr "" +msgstr "デフォルトタイムゾーン" #: actions/siteadminpanel.php:289 msgid "Default timezone for the site; usually UTC." -msgstr "" +msgstr "サイトã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚¿ã‚¤ãƒ ゾーン; 通常UTC。" #: actions/siteadminpanel.php:295 msgid "Default site language" -msgstr "" +msgstr "デフォルトサイト言語" #: actions/siteadminpanel.php:303 msgid "URLs" msgstr "" #: actions/siteadminpanel.php:306 -#, fuzzy msgid "Server" -msgstr "回復" +msgstr "サーãƒãƒ¼" #: actions/siteadminpanel.php:306 msgid "Site's server hostname." -msgstr "" +msgstr "サイトã®ã‚µãƒ¼ãƒãƒ¼ãƒ›ã‚¹ãƒˆå" #: actions/siteadminpanel.php:310 msgid "Fancy URLs" @@ -3361,42 +3389,39 @@ msgstr "" #: actions/siteadminpanel.php:312 msgid "Use fancy (more readable and memorable) URLs?" -msgstr "" +msgstr "Fancy URL (èªã¿ã‚„ã™ã忘れã«ãã„) を使用ã—ã¾ã™ã‹?" #: actions/siteadminpanel.php:318 -#, fuzzy msgid "Access" -msgstr "承èª" +msgstr "アクセス" #: actions/siteadminpanel.php:321 -#, fuzzy msgid "Private" -msgstr "プライãƒã‚·ãƒ¼" +msgstr "プライベート" #: actions/siteadminpanel.php:323 msgid "Prohibit anonymous users (not logged in) from viewing site?" -msgstr "" +msgstr "匿åユーザー(ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã›ã‚“)ãŒã‚µã‚¤ãƒˆã‚’見るã®ã‚’ç¦æ¢ã—ã¾ã™ã‹?" #: actions/siteadminpanel.php:327 msgid "Invite only" -msgstr "" +msgstr "招待ã®ã¿" #: actions/siteadminpanel.php:329 msgid "Make registration invitation only." -msgstr "" +msgstr "招待ã®ã¿ç™»éŒ²ã™ã‚‹" #: actions/siteadminpanel.php:333 -#, fuzzy msgid "Closed" -msgstr "ブãƒãƒƒã‚¯" +msgstr "é–‰ã˜ã‚‰ã‚ŒãŸ" #: actions/siteadminpanel.php:335 msgid "Disable new registrations." -msgstr "" +msgstr "æ–°è¦ç™»éŒ²ã‚’無効。" #: actions/siteadminpanel.php:341 msgid "Snapshots" -msgstr "" +msgstr "スナップショット" #: actions/siteadminpanel.php:344 msgid "Randomly during Web hit" @@ -3404,74 +3429,75 @@ msgstr "" #: actions/siteadminpanel.php:345 msgid "In a scheduled job" -msgstr "" +msgstr "予定ã•ã‚Œã¦ã„るジョブã§" #: actions/siteadminpanel.php:347 msgid "Data snapshots" -msgstr "" +msgstr "データスナップショット" #: actions/siteadminpanel.php:348 msgid "When to send statistical data to status.net servers" -msgstr "" +msgstr "ã„㤠status.net サーãƒã«çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’é€ã‚Šã¾ã™ã‹" #: actions/siteadminpanel.php:353 msgid "Frequency" -msgstr "" +msgstr "é »åº¦" #: actions/siteadminpanel.php:354 msgid "Snapshots will be sent once every N web hits" -msgstr "" +msgstr "レãƒãƒ¼ãƒˆ URL" #: actions/siteadminpanel.php:359 msgid "Report URL" -msgstr "" +msgstr "レãƒãƒ¼ãƒˆ URL" #: actions/siteadminpanel.php:360 msgid "Snapshots will be sent to this URL" -msgstr "" +msgstr "ã“ã®URLã«ã‚¹ãƒŠãƒƒãƒ—ショットをé€ã‚‹ã§ã—ょã†" #: actions/siteadminpanel.php:367 msgid "Limits" -msgstr "" +msgstr "制é™" #: actions/siteadminpanel.php:370 msgid "Text limit" -msgstr "" +msgstr "テã‚スト制é™" #: actions/siteadminpanel.php:370 msgid "Maximum number of characters for notices." -msgstr "" +msgstr "ã¤ã¶ã‚„ãã®æ–‡å—ã®æœ€å¤§æ•°" #: actions/siteadminpanel.php:374 msgid "Dupe limit" -msgstr "" +msgstr "デュープ制é™" #: actions/siteadminpanel.php:374 msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +"ã©ã‚Œãらã„é•·ã„é–“(秒)ã€ãƒ¦ãƒ¼ã‚¶ã¯ã€å†ã³åŒã˜ã‚‚ã®ã‚’投稿ã™ã‚‹ã®ã‚’å¾…ãŸãªã‘ã‚Œã°ãªã‚‰ãª" +"ã„ã‹ã€‚" #: actions/siteadminpanel.php:388 actions/useradminpanel.php:313 -#, fuzzy msgid "Save site settings" -msgstr "è¨å®š" +msgstr "サイトè¨å®šã®ä¿å˜" #: actions/smssettings.php:58 msgid "SMS Settings" -msgstr "" +msgstr "SMS è¨å®š" #: actions/smssettings.php:69 #, php-format msgid "You can receive SMS messages through email from %%site.name%%." msgstr "" +"ã‚ãªãŸã¯ %%site.name%% ã‹ã‚‰ãƒ¡ãƒ¼ãƒ«ã§SMSメッセージをå—ã‘å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" #: actions/smssettings.php:91 -#, fuzzy msgid "SMS is not available." -msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã¯ã‚ãªãŸãŒæ‰¿èªã—ãŸãƒ¡ãƒ‡ã‚£ã‚¢ã‚¿ã‚¤ãƒ—ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" +msgstr "SMS ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" #: actions/smssettings.php:112 msgid "Current confirmed SMS-enabled phone number." -msgstr "" +msgstr "ç¾åœ¨ã®ç¢ºèªã•ã‚ŒãŸ SMS å¯èƒ½ãªé›»è©±ç•ªå·ã€‚" #: actions/smssettings.php:123 msgid "Awaiting confirmation on this phone number." @@ -3483,60 +3509,63 @@ msgstr "確èªã‚³ãƒ¼ãƒ‰" #: actions/smssettings.php:131 msgid "Enter the code you received on your phone." -msgstr "" +msgstr "ã‚ãªãŸãŒã‚ãªãŸã®é›»è©±ã§å—ã‘å–ã£ãŸã‚³ãƒ¼ãƒ‰ã‚’入れã¦ãã ã•ã„。" #: actions/smssettings.php:138 msgid "SMS Phone number" -msgstr "" +msgstr "SMS 電話番å·" #: actions/smssettings.php:140 msgid "Phone number, no punctuation or spaces, with area code" -msgstr "" +msgstr "電話番å·ã€å¥èªç‚¹ã¾ãŸã¯ã‚¹ãƒšãƒ¼ã‚¹ãŒãªã„ã€å¸‚街番å·ä»˜ã" #: actions/smssettings.php:174 msgid "" "Send me notices through SMS; I understand I may incur exorbitant charges " "from my carrier." msgstr "" +"SMSを通ã—ã¦ã¤ã¶ã‚„ãã‚’ç§ã«é€ã£ã¦ãã ã•ã„; ç§ã¯ã€ç§ã®ã‚ャリアã‹ã‚‰æ³•å¤–ãªæ–™é‡‘を被" +"ã‚‹ã‹ã‚‚ã—ã‚Œãªã„ã®ã‚’ç†è§£ã—ã¦ã„ã¾ã™ã€‚" #: actions/smssettings.php:306 msgid "No phone number." -msgstr "" +msgstr "電話番å·ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/smssettings.php:311 msgid "No carrier selected." -msgstr "" +msgstr "ã‚ャリアãŒé¸æŠžã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: actions/smssettings.php:318 msgid "That is already your phone number." -msgstr "" +msgstr "ã“ã‚Œã¯ã™ã§ã«ã‚ãªãŸã®é›»è©±ç•ªå·ã§ã™ã€‚" #: actions/smssettings.php:321 msgid "That phone number already belongs to another user." -msgstr "" +msgstr "ã“ã®é›»è©±ç•ªå·ã¯ã™ã§ã«ä»–ã®åˆ©ç”¨è€…ã«ä½¿ã‚ã‚Œã¦ã„ã¾ã™ã€‚" #: actions/smssettings.php:347 -#, fuzzy msgid "" "A confirmation code was sent to the phone number you added. Check your phone " "for the code and instructions on how to use it." -msgstr "ãã®ç¢ºèªã‚³ãƒ¼ãƒ‰ã¯ã‚ãªãŸã®ã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“ï¼" +msgstr "" +"ã‚ãªãŸãŒåŠ ãˆãŸé›»è©±ç•ªå·ã«ç¢ºèªã‚³ãƒ¼ãƒ‰ã‚’é€ã‚Šã¾ã—ãŸã€‚ ã©ã†ãれを使用ã™ã‚‹ã‹ã«é–¢ã™ã‚‹" +"コードã¨æŒ‡ç¤ºã®ãŸã‚ã«é›»è©±ã‚’ãƒã‚§ãƒƒã‚¯ã—ã¦ãã ã•ã„。" #: actions/smssettings.php:374 msgid "That is the wrong confirmation number." -msgstr "" +msgstr "ãã‚Œã¯é–“é•ã£ãŸç¢ºèªç•ªå·ã§ã™ã€‚" #: actions/smssettings.php:405 msgid "That is not your phone number." -msgstr "" +msgstr "ãã‚Œã¯ã‚ãªãŸã®é›»è©±ç•ªå·ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/smssettings.php:465 msgid "Mobile carrier" -msgstr "" +msgstr "æºå¸¯é›»è©±ä¼šç¤¾" #: actions/smssettings.php:469 msgid "Select a carrier" -msgstr "" +msgstr "ã‚ャリアé¸æŠž" #: actions/smssettings.php:476 #, php-format @@ -3544,60 +3573,61 @@ msgid "" "Mobile carrier for your phone. If you know a carrier that accepts SMS over " "email but isn't listed here, send email to let us know at %s." msgstr "" +"ã‚ãªãŸã®é›»è©±ã®ãŸã‚ã®æºå¸¯é›»è©±ä¼šç¤¾ã€‚ メールã®ä¸Šã«SMSã‚’å—ã‘入れã¾ã™ãŒã€ã“ã“ã«è¨˜" +"載ã•ã‚Œã¦ã„ãªã„ã‚ャリアを知ã£ã¦ã„ã‚‹ãªã‚‰ã€ãƒ¡ãƒ¼ãƒ«ã‚’é€ã£ã¦ã€%sã§ç§ãŸã¡ã«çŸ¥ã‚‰ã›ã¦" +"ãã ã•ã„。" #: actions/smssettings.php:498 msgid "No code entered" -msgstr "" +msgstr "コードãŒå…¥åŠ›ã•ã‚Œã¦ã„ã¾ã›ã‚“" #: actions/subedit.php:70 -#, fuzzy msgid "You are not subscribed to that profile." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã¯ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã«ãƒ•ã‚©ãƒãƒ¼ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: actions/subedit.php:83 -#, fuzzy msgid "Could not save subscription." -msgstr "サブスクリプションを作æˆã§ãã¾ã›ã‚“" +msgstr "フォãƒãƒ¼ã‚’ä¿å˜ã§ãã¾ã›ã‚“。" #: actions/subscribe.php:55 -#, fuzzy msgid "Not a local user." -msgstr "ãã®ã‚ˆã†ãªãƒ¦ãƒ¼ã‚¶ã¯ã„ã¾ã›ã‚“。" +msgstr "ãƒãƒ¼ã‚«ãƒ«ãƒ¦ãƒ¼ã‚¶ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/subscribe.php:69 -#, fuzzy msgid "Subscribed" -msgstr "è³¼èª" +msgstr "フォãƒãƒ¼ã—ã¦ã„ã‚‹" #: actions/subscribers.php:50 -#, fuzzy, php-format +#, php-format msgid "%s subscribers" -msgstr "è³¼èªè€…" +msgstr "フォãƒãƒ¼ã•ã‚Œã¦ã„ã‚‹" #: actions/subscribers.php:52 #, php-format msgid "%s subscribers, page %d" -msgstr "" +msgstr "%s フォãƒãƒ¼ã•ã‚Œã¦ã„ã‚‹ã€ãƒšãƒ¼ã‚¸ %d" #: actions/subscribers.php:63 msgid "These are the people who listen to your notices." -msgstr "ã‚ãªãŸã®é€šçŸ¥ã‚’èžã„ã¦ã„る人" +msgstr "ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’èžã„ã¦ã„る人" #: actions/subscribers.php:67 #, php-format msgid "These are the people who listen to %s's notices." -msgstr "%s ã®é€šçŸ¥ã‚’èžã„ã¦ã„る人" +msgstr "%s ã®ã¤ã¶ã‚„ãã‚’èžã„ã¦ã„る人" #: actions/subscribers.php:108 msgid "" "You have no subscribers. Try subscribing to people you know and they might " "return the favor" msgstr "" +"ã‚ãªãŸã«ã¯ã€ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„る人ãŒå…¨ãã„ã¾ã›ã‚“。 ã‚ãªãŸãŒçŸ¥ã£ã¦ã„る人々をフォ" +"ãƒãƒ¼ã—ã¦ã¿ã¦ãã ã•ã„。ãã†ã™ã‚Œã°ã€å½¼ã‚‰ã¯ãŠæ°—ã«å…¥ã‚Šã‚’è¿”ã™ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。" #: actions/subscribers.php:110 #, php-format msgid "%s has no subscribers. Want to be the first?" -msgstr "" +msgstr "%s ã«ã¯ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„る人ãŒã„ã¾ã›ã‚“。最åˆã®äººã«ãªã‚Šã¾ã™ã‹?" #: actions/subscribers.php:114 #, php-format @@ -3605,25 +3635,27 @@ msgid "" "%s has no subscribers. Why not [register an account](%%%%action.register%%%" "%) and be the first?" msgstr "" +"%s ã«ã¯ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„る人ãŒã„ã¾ã›ã‚“。ãªãœ[アカウント登録](%%%%action.register" +"%%%%)ã—ã¦æœ€åˆã«ãªã‚‰ãªã„ã®ã§ã™ã‹?" #: actions/subscriptions.php:52 -#, fuzzy, php-format +#, php-format msgid "%s subscriptions" -msgstr "å…¨ã¦ã®ã‚µãƒ–スクリプション" +msgstr "%s フォãƒãƒ¼ã—ã¦ã„ã‚‹" #: actions/subscriptions.php:54 -#, fuzzy, php-format +#, php-format msgid "%s subscriptions, page %d" -msgstr "å…¨ã¦ã®ã‚µãƒ–スクリプション" +msgstr "%s フォãƒãƒ¼ã—ã¦ã„ã‚‹ã€ãƒšãƒ¼ã‚¸ %d" #: actions/subscriptions.php:65 msgid "These are the people whose notices you listen to." -msgstr "ã‚ãªãŸãŒé€šçŸ¥ã‚’èžã„ã¦ã„る人" +msgstr "ã‚ãªãŸãŒã¤ã¶ã‚„ãã‚’èžã„ã¦ã„る人" #: actions/subscriptions.php:69 #, php-format msgid "These are the people whose notices %s listens to." -msgstr "%s ãŒé€šçŸ¥ã‚’èžã„ã¦ã„る人" +msgstr "%s ãŒã¤ã¶ã‚„ãã‚’èžã„ã¦ã„る人" #: actions/subscriptions.php:121 #, php-format @@ -3634,107 +3666,108 @@ msgid "" "featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can " "automatically subscribe to people you already follow there." msgstr "" +"今ã€ã ã‚Œã®ã¤ã¶ã‚„ãã‚‚èžã„ã¦ã„ãªã„ãªã‚‰ã€ã‚ãªãŸãŒçŸ¥ã£ã¦ã„る人々をフォãƒãƒ¼ã—ã¦ã¿" +"ã¦ãã ã•ã„。[ピープル検索](%%action.peoplesearch%%)を試ã—ã¦ãã ã•ã„。ãã—ã¦ã€" +"ã‚ãªãŸãŒèˆˆå‘³ã‚’æŒã£ã¦ã„るグループã¨ç§ãŸã¡ã®[フィーãƒãƒ£ãƒ¼ã•ã‚ŒãŸåˆ©ç”¨è€…](%%" +"action.featured%%)ã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’探ã—ã¦ãã ã•ã„。もã—[Twitterユーザ](%%action." +"twittersettings%%)ã§ã‚ã‚Œã°ã€ã‚ãªãŸã¯è‡ªå‹•çš„ã«æ—¢ã«ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„る人々をフォ" +"ãƒãƒ¼ã§ãã¾ã™ã€‚" #: actions/subscriptions.php:123 actions/subscriptions.php:127 -#, fuzzy, php-format +#, php-format msgid "%s is not listening to anyone." -msgstr "%1$s 㯠%2$s ã§ã‚ãªãŸã®é€šçŸ¥ã‚’èžã„ã¦ã„ã¾ã™ã€‚" +msgstr "%s ã¯ã れも言ã†ã“ã¨ã‚’èžã„ã¦ã„ã¾ã›ã‚“。" #: actions/subscriptions.php:194 -#, fuzzy msgid "Jabber" -msgstr "Jabbar ID ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "Jabber" #: actions/subscriptions.php:199 lib/connectsettingsaction.php:115 msgid "SMS" -msgstr "" +msgstr "SMS" #: actions/tag.php:68 -#, fuzzy, php-format +#, php-format msgid "Notices tagged with %s, page %d" -msgstr "マイクãƒãƒ–ãƒã‚° by %s" +msgstr "%s ã¨ã‚¿ã‚°ä»˜ã‘ã•ã‚ŒãŸã¤ã¶ã‚„ãã€ãƒšãƒ¼ã‚¸ %d" #: actions/tag.php:86 -#, fuzzy, php-format +#, php-format msgid "Notice feed for tag %s (RSS 1.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã¨ã‚¿ã‚°ä»˜ã‘ã•ã‚ŒãŸã¤ã¶ã‚„ãフィード (RSS 1.0)" #: actions/tag.php:92 -#, fuzzy, php-format +#, php-format msgid "Notice feed for tag %s (RSS 2.0)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã¨ã‚¿ã‚°ä»˜ã‘ã•ã‚ŒãŸã¤ã¶ã‚„ãフィード (RSS 2.0)" #: actions/tag.php:98 -#, fuzzy, php-format +#, php-format msgid "Notice feed for tag %s (Atom)" -msgstr "%sã®é€šçŸ¥ãƒ•ã‚£ãƒ¼ãƒ‰" +msgstr "%s ã¨ã‚¿ã‚°ä»˜ã‘ã•ã‚ŒãŸã¤ã¶ã‚„ãフィード (Atom)" #: actions/tagother.php:39 -#, fuzzy msgid "No ID argument." -msgstr "ãã®ã‚ˆã†ãªãƒ‰ã‚ュメントã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ID引数ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/tagother.php:65 #, php-format msgid "Tag %s" -msgstr "" +msgstr "ã‚¿ã‚° %s" #: actions/tagother.php:77 lib/userprofile.php:75 -#, fuzzy msgid "User profile" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者プãƒãƒ•ã‚¡ã‚¤ãƒ«" #: actions/tagother.php:81 lib/userprofile.php:102 msgid "Photo" -msgstr "" +msgstr "写真" #: actions/tagother.php:141 msgid "Tag user" -msgstr "" +msgstr "タグ利用者" #: actions/tagother.php:151 msgid "" "Tags for this user (letters, numbers, -, ., and _), comma- or space- " "separated" msgstr "" +"ã“ã®åˆ©ç”¨è€…ã®ã‚¿ã‚° (アルファベットã€æ•°å—ã€-ã€.ã€_)ã€ã‚«ãƒ³ãƒžã‹ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡ã‚Š" #: actions/tagother.php:193 msgid "" "You can only tag people you are subscribed to or who are subscribed to you." msgstr "" +"ã‚ãªãŸã¯ãƒ•ã‚©ãƒãƒ¼ã•ã‚Œã‚‹äººã€…ã«ã‚¿ã‚°ä»˜ã‘ã‚’ã™ã‚‹ã“ã¨ãŒã§ãã‚‹ã ã‘ã‹ã€ã‚ãªãŸã‚’フォ" +"ãƒãƒ¼ã•ã‚Œã¦ã„ã‚‹ã‹ã€‚" #: actions/tagother.php:200 -#, fuzzy msgid "Could not save tags." -msgstr "ã‚¢ãƒã‚¿ãƒ¼ã‚’ä¿å˜ã§ãã¾ã›ã‚“" +msgstr "ã‚¿ã‚°ã‚’ã‚’ä¿å˜ã§ãã¾ã›ã‚“。" #: actions/tagother.php:236 msgid "Use this form to add tags to your subscribers or subscriptions." -msgstr "" +msgstr "ã“ã®ãƒ•ã‚©ãƒ¼ãƒ を使用ã—ã¦ã€ãƒ•ã‚©ãƒãƒ¼è€…ã‹ãƒ•ã‚©ãƒãƒ¼ã«ã‚¿ã‚°ã‚’åŠ ãˆã¦ãã ã•ã„。" #: actions/tagrss.php:35 -#, fuzzy msgid "No such tag." -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ãã®ã‚ˆã†ãªã‚¿ã‚°ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/twitapitrends.php:87 msgid "API method under construction." msgstr "API メソッドãŒå·¥äº‹ä¸ã§ã™ã€‚" #: actions/unblock.php:59 -#, fuzzy msgid "You haven't blocked that user." -msgstr "æ—¢ã«ãƒã‚°ã‚¤ãƒ³æ¸ˆã¿ã§ã™ã€‚" +msgstr "ã‚ãªãŸã¯ãã®ãƒ¦ãƒ¼ã‚¶ã‚’ブãƒãƒƒã‚¯ã—ã¦ã„ã¾ã›ã‚“。" #: actions/unsandbox.php:72 -#, fuzzy msgid "User is not sandboxed." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者ã¯ã‚µãƒ³ãƒ‰ãƒœãƒƒã‚¯ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/unsilence.php:72 -#, fuzzy msgid "User is not silenced." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者ã¯ã‚µã‚¤ãƒ¬ãƒ³ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/unsubscribe.php:77 msgid "No profile id in request." @@ -3746,34 +3779,36 @@ msgstr "ãã®IDã¯ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/unsubscribe.php:98 msgid "Unsubscribed" -msgstr "サブスクライブ解除済ã¿" +msgstr "フォãƒãƒ¼è§£é™¤æ¸ˆã¿" #: actions/updateprofile.php:62 actions/userauthorization.php:330 #, php-format msgid "Listenee stream license ‘%s’ is not compatible with site license ‘%s’." msgstr "" +"リスニーストリームライセンス ‘%s’ ã¯ã€ã‚µã‚¤ãƒˆãƒ©ã‚¤ã‚»ãƒ³ã‚¹ ‘%s’ ã¨äº’æ›æ€§ãŒã‚ã‚Šã¾" +"ã›ã‚“。" #: actions/useradminpanel.php:58 lib/adminpanelaction.php:305 #: lib/personalgroupnav.php:115 msgid "User" -msgstr "" +msgstr "利用者" #: actions/useradminpanel.php:69 msgid "User settings for this StatusNet site." -msgstr "" +msgstr "ã“ã® StatusNet サイトã®åˆ©ç”¨è€…è¨å®šã€‚" #: actions/useradminpanel.php:149 msgid "Invalid bio limit. Must be numeric." -msgstr "" +msgstr "ä¸æ£ãªè‡ªå·±ç´¹ä»‹åˆ¶é™ã€‚æ•°å—ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚" #: actions/useradminpanel.php:155 msgid "Invalid welcome text. Max length is 255 characters." -msgstr "" +msgstr "ä¸æ£ãªã‚¦ã‚§ãƒ«ã‚«ãƒ テã‚スト。最大長ã¯255å—ã§ã™ã€‚" #: actions/useradminpanel.php:165 #, php-format msgid "Invalid default subscripton: '%1$s' is not user." -msgstr "" +msgstr "ä¸æ£ãªãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ•ã‚©ãƒãƒ¼ã§ã™: '%1$s' ã¯åˆ©ç”¨è€…ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108 #: lib/personalgroupnav.php:109 @@ -3782,86 +3817,80 @@ msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«" #: actions/useradminpanel.php:222 msgid "Bio Limit" -msgstr "" +msgstr "自己紹介制é™" #: actions/useradminpanel.php:223 msgid "Maximum length of a profile bio in characters." -msgstr "" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«è‡ªå·±ç´¹ä»‹ã®æœ€å¤§æ–‡å—長。" #: actions/useradminpanel.php:231 -#, fuzzy msgid "New users" -msgstr "削除" +msgstr "æ–°ã—ã„利用者" #: actions/useradminpanel.php:235 msgid "New user welcome" -msgstr "" +msgstr "æ–°ã—ã„利用者をæ“è¿Ž" #: actions/useradminpanel.php:236 msgid "Welcome text for new users (Max 255 chars)." -msgstr "" +msgstr "æ–°ã—ã„利用者ã¸ã®ã‚¦ã‚§ãƒ«ã‚«ãƒ テã‚スト (最大255å—)。" #: actions/useradminpanel.php:241 -#, fuzzy msgid "Default subscription" -msgstr "ã™ã¹ã¦ã®è³¼èª" +msgstr "デフォルトフォãƒãƒ¼" #: actions/useradminpanel.php:242 -#, fuzzy msgid "Automatically subscribe new users to this user." -msgstr "自分を購èªã—ã¦ã„る者を自動的ã«è³¼èªã™ã‚‹ (éžäººé–“ã«æœ€é©)" +msgstr "自動的ã«ã“ã®åˆ©ç”¨è€…ã«æ–°ã—ã„利用者をフォãƒãƒ¼ã—ã¦ãã ã•ã„。" #: actions/useradminpanel.php:251 -#, fuzzy msgid "Invitations" -msgstr "確èªã‚³ãƒ¼ãƒ‰" +msgstr "招待" #: actions/useradminpanel.php:256 msgid "Invitations enabled" -msgstr "" +msgstr "招待ãŒå¯èƒ½" #: actions/useradminpanel.php:258 msgid "Whether to allow users to invite new users." -msgstr "" +msgstr "利用者ãŒæ–°ã—ã„利用者を招待ã™ã‚‹ã®ã‚’許容ã™ã‚‹ã‹ã©ã†ã‹ã€‚" #: actions/useradminpanel.php:265 msgid "Sessions" -msgstr "" +msgstr "セッション" #: actions/useradminpanel.php:270 msgid "Handle sessions" -msgstr "" +msgstr "セッションã®æ‰±ã„" #: actions/useradminpanel.php:272 msgid "Whether to handle sessions ourselves." -msgstr "" +msgstr "自分é”ã§ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚’扱ã†ã®ã§ã‚ã‚‹ã‹ã©ã†ã‹ã€‚" #: actions/useradminpanel.php:276 msgid "Session debugging" -msgstr "" +msgstr "セッションデãƒãƒƒã‚°" #: actions/useradminpanel.php:278 msgid "Turn on debugging output for sessions." -msgstr "" +msgstr "セッションã®ãŸã‚ã®ãƒ‡ãƒãƒƒã‚°å‡ºåŠ›ã‚’オン。" #: actions/userauthorization.php:105 msgid "Authorize subscription" -msgstr "è³¼èªã‚’許å¯" +msgstr "フォãƒãƒ¼ã‚’承èª" #: actions/userauthorization.php:110 -#, fuzzy msgid "" "Please check these details to make sure that you want to subscribe to this " "user’s notices. If you didn’t just ask to subscribe to someone’s notices, " "click “Rejectâ€." msgstr "" -"ユーザã®é€šçŸ¥ã‚’è³¼èªã™ã‚‹ã«ã¯è©³ç´°ã‚’確èªã—ã¦ä¸‹ã•ã„。購èªã—ãªã„å ´åˆã¯ã€\"Cancel\" " -"ã‚ャンセルをクリックã—ã¦ä¸‹ã•ã„。" +"ユーザã®ã¤ã¶ã‚„ãをフォãƒãƒ¼ã™ã‚‹ã«ã¯è©³ç´°ã‚’確èªã—ã¦ä¸‹ã•ã„。ã ã‚Œã‹ã®ã¤ã¶ã‚„ãã‚’" +"フォãƒãƒ¼ã™ã‚‹ãŸã‚ã«å°‹ããªã„å ´åˆã¯ã€\"Reject\" をクリックã—ã¦ä¸‹ã•ã„。" #: actions/userauthorization.php:188 -#, fuzzy msgid "License" -msgstr "ライセンス。" +msgstr "ライセンス" #: actions/userauthorization.php:209 msgid "Accept" @@ -3870,16 +3899,15 @@ msgstr "承èª" #: actions/userauthorization.php:210 lib/subscribeform.php:115 #: lib/subscribeform.php:139 msgid "Subscribe to this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’è³¼èª" +msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’フォãƒãƒ¼" #: actions/userauthorization.php:211 msgid "Reject" msgstr "æ‹’å¦" #: actions/userauthorization.php:212 -#, fuzzy msgid "Reject this subscription" -msgstr "å…¨ã¦ã®ã‚µãƒ–スクリプション" +msgstr "ã“ã®ãƒ•ã‚©ãƒãƒ¼ã‚’æ‹’å¦" #: actions/userauthorization.php:225 msgid "No authorization request!" @@ -3887,7 +3915,7 @@ msgstr "èªè¨¼ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/userauthorization.php:247 msgid "Subscription authorized" -msgstr "è³¼èªãŒè¨±å¯" +msgstr "フォãƒãƒ¼ãŒæ‰¿èªã•ã‚Œã¾ã—ãŸ" #: actions/userauthorization.php:249 msgid "" @@ -3895,10 +3923,13 @@ msgid "" "with the site’s instructions for details on how to authorize the " "subscription. Your subscription token is:" msgstr "" +"フォãƒãƒ¼ã¯æ‰¿èªã•ã‚Œã¾ã—ãŸãŒã€ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ï¼µï¼²ï¼¬ãŒé€šéŽã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã©ã†" +"フォãƒãƒ¼ã‚’承èªã™ã‚‹ã‹ã«é–¢ã™ã‚‹è©³ç´°ã®ãŸã‚ã®ã‚µã‚¤ãƒˆã®æŒ‡ç¤ºã‚’ãƒã‚§ãƒƒã‚¯ã—ã¦ãã ã•ã„。" +"ã‚ãªãŸã®ãƒ•ã‚©ãƒãƒ¼ãƒˆãƒ¼ã‚¯ãƒ³ã¯:" #: actions/userauthorization.php:259 msgid "Subscription rejected" -msgstr "è³¼èªãŒæ‹’å¦" +msgstr "フォãƒãƒ¼ãŒæ‹’å¦" #: actions/userauthorization.php:261 msgid "" @@ -3906,61 +3937,65 @@ msgid "" "with the site’s instructions for details on how to fully reject the " "subscription." msgstr "" +"フォãƒãƒ¼ã¯æ‹’絶ã•ã‚Œã¾ã—ãŸãŒã€ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯URLã¯å…¨ã通éŽã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚ ã©ã†" +"フォãƒãƒ¼ã‚’完全ã«æ‹’絶ã™ã‚‹ã‹ã«é–¢ã™ã‚‹è©³ç´°ã®ãŸã‚ã®ã‚µã‚¤ãƒˆã®æŒ‡ç¤ºã‚’ãƒã‚§ãƒƒã‚¯ã—ã¦ãã " +"ã•ã„。" #: actions/userauthorization.php:296 #, php-format msgid "Listener URI ‘%s’ not found here" -msgstr "" +msgstr "リスナー URI ‘%s’ ã¯ã“ã“ã§ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" #: actions/userauthorization.php:301 #, php-format msgid "Listenee URI ‘%s’ is too long." -msgstr "" +msgstr "リスニー URI ‘%s’ ãŒé•·ã™ãŽã¾ã™ã€‚" #: actions/userauthorization.php:307 #, php-format msgid "Listenee URI ‘%s’ is a local user." -msgstr "" +msgstr "リスニー URI ‘%s’ ã¯ãƒãƒ¼ã‚«ãƒ«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/userauthorization.php:322 #, php-format msgid "Profile URL ‘%s’ is for a local user." -msgstr "" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ« URL ‘%s’ ã¯ãƒãƒ¼ã‚«ãƒ«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: actions/userauthorization.php:338 #, php-format msgid "Avatar URL ‘%s’ is not valid." -msgstr "" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ URL ‘%s’ ãŒæ£ã—ãã‚ã‚Šã¾ã›ã‚“。" #: actions/userauthorization.php:343 -#, fuzzy, php-format +#, php-format msgid "Can’t read avatar URL ‘%s’." msgstr "ã‚¢ãƒã‚¿ãƒ¼URL をèªã¿å–ã‚Œã¾ã›ã‚“ '%s'" #: actions/userauthorization.php:348 -#, fuzzy, php-format +#, php-format msgid "Wrong image type for avatar URL ‘%s’." -msgstr "ä¸æ£ãªç”»åƒå½¢å¼ã€‚'%s'" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ URL '%s' ã¯ä¸æ£ãªç”»åƒå½¢å¼ã€‚" #: actions/userbyid.php:70 -#, fuzzy msgid "No ID." -msgstr "id ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "ID ãŒã‚ã‚Šã¾ã›ã‚“。" #: actions/userdesignsettings.php:76 lib/designsettings.php:65 -#, fuzzy msgid "Profile design" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«è¨å®š" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãƒ‡ã‚¶ã‚¤ãƒ³" #: actions/userdesignsettings.php:87 lib/designsettings.php:76 msgid "" "Customize the way your profile looks with a background image and a colour " "palette of your choice." msgstr "" +"ã‚ãªãŸã®ãƒ—ãƒãƒ•ã‚£ãƒ¼ãƒ«ãŒãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ç”»åƒã¨ã‚ãªãŸã®é¸æŠžã®è‰²ã®ãƒ‘レットã§è¦‹ã‚‹" +"方法をカスタマイズã—ã¦ãã ã•ã„。" #: actions/userdesignsettings.php:282 +#, fuzzy msgid "Enjoy your hotdog!" -msgstr "" +msgstr "ã‚ãªãŸã®hotdogを楽ã—ã‚“ã§ãã ã•ã„!" #: actions/usergroups.php:64 #, php-format @@ -3968,19 +4003,18 @@ msgid "%s groups, page %d" msgstr "%s グループ, %d ページ" #: actions/usergroups.php:130 -#, fuzzy msgid "Search for more groups" -msgstr "人々ã‹ãƒ†ã‚ストを検索" +msgstr "ã‚‚ã£ã¨ã‚°ãƒ«ãƒ¼ãƒ—を検索" #: actions/usergroups.php:153 -#, fuzzy, php-format +#, php-format msgid "%s is not a member of any group." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "%s ã¯ã©ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã‚‚ã‚ã‚Šã¾ã›ã‚“。" #: actions/usergroups.php:158 #, php-format msgid "Try [searching for groups](%%action.groupsearch%%) and joining them." -msgstr "" +msgstr "[グループを探ã—ã¦](%%action.groupsearch%%)ãã‚Œã«åŠ å…¥ã—ã¦ãã ã•ã„。" #: classes/File.php:137 #, php-format @@ -3988,69 +4022,75 @@ msgid "" "No file may be larger than %d bytes and the file you sent was %d bytes. Try " "to upload a smaller version." msgstr "" +"ã©ã‚“ãªãƒ•ã‚¡ã‚¤ãƒ«ã‚‚ %d ãƒã‚¤ãƒˆã‚ˆã‚Šå¤§ããã¦ã¯ã„ã‘ã¾ã›ã‚“ã€ãã—ã¦ã€ã‚ãªãŸãŒé€ã£ãŸ" +"ファイル㯠%d ãƒã‚¤ãƒˆã§ã—ãŸã€‚よりå°ã•ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’アップãƒãƒ¼ãƒ‰ã™ã‚‹ã‚ˆã†ã«ã—ã¦" +"ãã ã•ã„。" #: classes/File.php:147 #, php-format msgid "A file this large would exceed your user quota of %d bytes." msgstr "" +"ã“ã‚Œã»ã©å¤§ãã„ファイルã¯ã‚ãªãŸã®%dãƒã‚¤ãƒˆã®ãƒ¦ãƒ¼ã‚¶å‰²å½“ã¦ã‚’超ãˆã¦ã„ã‚‹ã§ã—ょã†ã€‚" #: classes/File.php:154 #, php-format msgid "A file this large would exceed your monthly quota of %d bytes." msgstr "" +"ã“ã‚Œã»ã©å¤§ãã„ファイルã¯ã‚ãªãŸã®%dãƒã‚¤ãƒˆã®æ¯Žæœˆã®å‰²å½“ã¦ã‚’超ãˆã¦ã„ã‚‹ã§ã—ょã†ã€‚" #: classes/Message.php:45 msgid "You are banned from sending direct messages." -msgstr "" +msgstr "ã‚ãªãŸã¯ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã®ãŒç¦æ¢ã•ã‚Œã¦ã„ã¾ã™ã€‚" #: classes/Message.php:61 msgid "Could not insert message." -msgstr "" +msgstr "ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’è¿½åŠ ã§ãã¾ã›ã‚“。" #: classes/Message.php:71 msgid "Could not update message with new URI." -msgstr "" +msgstr "æ–°ã—ã„URIã§ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’アップデートã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" #: classes/Notice.php:172 #, php-format msgid "DB error inserting hashtag: %s" -msgstr "" +msgstr "ãƒãƒƒã‚·ãƒ¥ã‚¿ã‚°è¿½åŠ DB エラー: %s" #: classes/Notice.php:226 -#, fuzzy msgid "Problem saving notice. Too long." -msgstr "通知をä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚" +msgstr "ã¤ã¶ã‚„ãã‚’ä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚é•·ã™ãŽã§ã™ã€‚" #: classes/Notice.php:230 -#, fuzzy msgid "Problem saving notice. Unknown user." -msgstr "通知をä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚" +msgstr "ã¤ã¶ã‚„ãã‚’ä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ä¸æ˜Žãªåˆ©ç”¨è€…ã§ã™ã€‚" #: classes/Notice.php:235 msgid "" "Too many notices too fast; take a breather and post again in a few minutes." msgstr "" +"多ã™ãŽã‚‹ã¤ã¶ã‚„ããŒé€Ÿã™ãŽã¾ã™; 数分間ã®ä¼‘ã¿ã‚’å–ã£ã¦ã‹ã‚‰å†æŠ•ç¨¿ã—ã¦ãã ã•ã„。" #: classes/Notice.php:241 msgid "" "Too many duplicate messages too quickly; take a breather and post again in a " "few minutes." msgstr "" +"多ã™ãŽã‚‹é‡è¤‡ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒé€Ÿã™ãŽã¾ã™; 数分間休ã¿ã‚’å–ã£ã¦ã‹ã‚‰å†åº¦æŠ•ç¨¿ã—ã¦ãã ã•" +"ã„。" #: classes/Notice.php:247 msgid "You are banned from posting notices on this site." -msgstr "" +msgstr "ã‚ãªãŸã¯ã“ã®ã‚µã‚¤ãƒˆã§ã¤ã¶ã‚„ãを投稿ã™ã‚‹ã®ãŒç¦æ¢ã•ã‚Œã¦ã„ã¾ã™ã€‚" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." -msgstr "通知をä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚" +msgstr "ã¤ã¶ã‚„ãã‚’ä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "è¿”ä¿¡ã‚’è¿½åŠ ã™ã‚‹éš›ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚¨ãƒ©ãƒ¼ : %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4058,17 +4098,15 @@ msgstr "" #: classes/User.php:368 #, php-format msgid "Welcome to %1$s, @%2$s!" -msgstr "" +msgstr "よã†ã“ã %1$sã€@%2$s!" #: classes/User_group.php:380 -#, fuzzy msgid "Could not create group." -msgstr "ã‚¢ãƒã‚¿ãƒ¼ã‚’ä¿å˜ã§ãã¾ã›ã‚“" +msgstr "グループを作æˆã§ãã¾ã›ã‚“。" #: classes/User_group.php:409 -#, fuzzy msgid "Could not set group membership." -msgstr "サブスクリプションを作æˆã§ãã¾ã›ã‚“" +msgstr "グループメンãƒãƒ¼ã‚·ãƒƒãƒ—をセットã§ãã¾ã›ã‚“。" #: lib/accountsettingsaction.php:108 msgid "Change your profile settings" @@ -4087,9 +4125,8 @@ msgid "Change email handling" msgstr "メールã®æ‰±ã„を変更" #: lib/accountsettingsaction.php:124 -#, fuzzy msgid "Design your profile" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã‚’デザイン" #: lib/accountsettingsaction.php:128 msgid "Other" @@ -4108,134 +4145,128 @@ msgstr "" msgid "Untitled page" msgstr "å称未è¨å®šãƒšãƒ¼ã‚¸" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" -msgstr "" +msgstr "プライマリサイトナビゲーション" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "ホーム" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" -msgstr "" +msgstr "パーソナルプãƒãƒ•ã‚¡ã‚¤ãƒ«ã¨å‹äººã®ã‚¿ã‚¤ãƒ ライン" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "アカウント" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "メールアドレスã€ã‚¢ãƒã‚¿ãƒ¼ã€ãƒ‘スワードã€ãƒ—ãƒãƒ‘ティã®å¤‰æ›´" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "接続" -#: lib/action.php:436 -#, fuzzy +#: lib/action.php:437 msgid "Connect to services" -msgstr "サーãƒã¸ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã§ãã¾ã›ã‚“ : %s" +msgstr "サービスã¸æŽ¥ç¶š" -#: lib/action.php:440 -#, fuzzy +#: lib/action.php:441 msgid "Change site configuration" -msgstr "サブスクリプション" +msgstr "サイトè¨å®šã®å¤‰æ›´" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" -msgstr "" +msgstr "招待" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" -msgstr "" +msgstr "å‹äººã‚„åŒåƒšãŒ %s ã§åŠ ã‚るよã†èª˜ã£ã¦ãã ã•ã„。" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "ãƒã‚°ã‚¢ã‚¦ãƒˆ" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "サイトã‹ã‚‰ãƒã‚°ã‚¢ã‚¦ãƒˆ" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "アカウントを作æˆ" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "サイトã¸ãƒã‚°ã‚¤ãƒ³" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "ヘルプ" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "助ã‘ã¦ï¼" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "検索" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "人々ã‹ãƒ†ã‚ストを検索" -#: lib/action.php:485 -#, fuzzy +#: lib/action.php:486 msgid "Site notice" -msgstr "æ–°ã—ã„通知" +msgstr "サイトã¤ã¶ã‚„ã" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" -msgstr "" +msgstr "ãƒãƒ¼ã‚«ãƒ«ãƒ“ュー" -#: lib/action.php:617 -#, fuzzy +#: lib/action.php:618 msgid "Page notice" -msgstr "æ–°ã—ã„通知" +msgstr "ページã¤ã¶ã‚„ã" -#: lib/action.php:719 -#, fuzzy +#: lib/action.php:720 msgid "Secondary site navigation" -msgstr "サブスクリプション" +msgstr "セカンダリサイトナビゲーション" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" -msgstr "解説" +msgstr "About" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "よãã‚る質å•" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "プライãƒã‚·ãƒ¼" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "ソース" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "連絡先" -#: lib/action.php:741 -#, fuzzy +#: lib/action.php:742 msgid "Badge" -msgstr "çªã" +msgstr "ãƒãƒƒã‚¸" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" -msgstr "" +msgstr "StatusNet ソフトウェアライセンス" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4244,12 +4275,12 @@ msgstr "" "**%%site.name%%** 㯠[%%site.broughtby%%](%%site.broughtbyurl%%) ãŒæä¾›ã™ã‚‹ãƒž" "イクãƒãƒ–ãƒã‚°ã‚µãƒ¼ãƒ“スã§ã™ã€‚ " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** ã¯ãƒžã‚¤ã‚¯ãƒãƒ–ãƒã‚°ã‚µãƒ¼ãƒ“スã§ã™ã€‚ " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4260,104 +4291,107 @@ msgstr "" "ã„ã¦ã„ã¾ã™ã€‚ ライセンス [GNU Affero General Public License](http://www.fsf." "org/licensing/licenses/agpl-3.0.html)。" -#: lib/action.php:790 -#, fuzzy +#: lib/action.php:791 msgid "Site content license" -msgstr "æ–°ã—ã„通知" +msgstr "サイト内容ライセンス" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " -msgstr "" +msgstr "全㦠" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "ライセンス。" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" -msgstr "" +msgstr "ページ化" -#: lib/action.php:1107 -#, fuzzy +#: lib/action.php:1108 msgid "After" -msgstr "<< å‰" +msgstr "<<後" -#: lib/action.php:1115 -#, fuzzy +#: lib/action.php:1116 msgid "Before" -msgstr "å‰ >>" +msgstr "å‰>>" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." -msgstr "" +msgstr "ã‚ãªãŸã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ãƒˆãƒ¼ã‚¯ãƒ³ã«é–¢ã™ã‚‹å•é¡ŒãŒã‚ã‚Šã¾ã—ãŸã€‚" #: lib/adminpanelaction.php:96 msgid "You cannot make changes to this site." -msgstr "" +msgstr "ã‚ãªãŸã¯ã“ã®ã‚µã‚¤ãƒˆã¸ã®å¤‰æ›´ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã›ã‚“。" #: lib/adminpanelaction.php:195 msgid "showForm() not implemented." -msgstr "" +msgstr "showForm() ã¯å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: lib/adminpanelaction.php:224 msgid "saveSettings() not implemented." -msgstr "" +msgstr "saveSettings() ã¯å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: lib/adminpanelaction.php:247 msgid "Unable to delete design setting." -msgstr "" +msgstr "デザインè¨å®šã‚’削除ã§ãã¾ã›ã‚“。" #: lib/adminpanelaction.php:300 -#, fuzzy msgid "Basic site configuration" -msgstr "メールアドレス確èª" +msgstr "基本サイトè¨å®š" #: lib/adminpanelaction.php:303 -#, fuzzy msgid "Design configuration" -msgstr "メールアドレス確èª" +msgstr "デザインè¨å®š" #: lib/adminpanelaction.php:306 lib/adminpanelaction.php:309 -#, fuzzy msgid "Paths configuration" -msgstr "メールアドレス確èª" +msgstr "パスè¨å®š" #: lib/attachmentlist.php:87 msgid "Attachments" -msgstr "" +msgstr "添付" #: lib/attachmentlist.php:265 msgid "Author" -msgstr "" +msgstr "作者" #: lib/attachmentlist.php:278 -#, fuzzy msgid "Provider" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«" +msgstr "プãƒãƒã‚¤ãƒ€" #: lib/attachmentnoticesection.php:67 msgid "Notices where this attachment appears" -msgstr "" +msgstr "ã“ã®æ·»ä»˜ãŒç¾ã‚Œã‚‹ã¤ã¶ã‚„ã" #: lib/attachmenttagcloudsection.php:48 msgid "Tags for this attachment" -msgstr "" +msgstr "ã“ã®æ·»ä»˜ã®ã‚¿ã‚°" + +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "パスワード変更" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "パスワード変更" #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" -msgstr "" +msgstr "コマンドçµæžœ" #: lib/channel.php:210 msgid "Command complete" -msgstr "" +msgstr "コマンド完了" #: lib/channel.php:221 msgid "Command failed" -msgstr "" +msgstr "コマンド失敗" #: lib/command.php:44 msgid "Sorry, this command is not yet implemented." -msgstr "" +msgstr "ã™ã¿ã¾ã›ã‚“ã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã¾ã 実装ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: lib/command.php:88 #, php-format @@ -4366,12 +4400,12 @@ msgstr "ユーザを更新ã§ãã¾ã›ã‚“" #: lib/command.php:92 msgid "It does not make a lot of sense to nudge yourself!" -msgstr "" +msgstr "ãã‚Œã¯è‡ªåˆ†è‡ªèº«ã¸ã®åˆå›³ã§å¤šãã¯æ„味ãŒã‚ã‚Šã¾ã›ã‚“!" #: lib/command.php:99 #, php-format msgid "Nudge sent to %s" -msgstr "" +msgstr "%s ã¸åˆå›³ã‚’é€ã‚Šã¾ã—ãŸ" #: lib/command.php:126 #, php-format @@ -4380,19 +4414,22 @@ msgid "" "Subscribers: %2$s\n" "Notices: %3$s" msgstr "" +"フォãƒãƒ¼ã—ã¦ã„ã‚‹: %1$s\n" +"フォãƒãƒ¼ã•ã‚Œã¦ã„ã‚‹: %2$s\n" +"ã¤ã¶ã‚„ã: %3$s" #: lib/command.php:152 lib/command.php:399 lib/command.php:460 msgid "Notice with that id does not exist" -msgstr "" +msgstr "ãã® ID ã«ã‚ˆã‚‹ã¤ã¶ã‚„ãã¯å˜åœ¨ã—ã¦ã„ã¾ã›ã‚“" #: lib/command.php:168 lib/command.php:415 lib/command.php:476 #: lib/command.php:532 msgid "User has no last notice" -msgstr "" +msgstr "利用者ã¯ã¾ã ã¤ã¶ã‚„ã„ã¦ã„ã¾ã›ã‚“" #: lib/command.php:190 msgid "Notice marked as fave." -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Šã«ã•ã‚Œã¦ã„ã‚‹ã¤ã¶ã‚„ã。" #: lib/command.php:315 #, php-format @@ -4402,107 +4439,104 @@ msgstr "" #: lib/command.php:318 #, php-format msgid "Fullname: %s" -msgstr "" +msgstr "フルãƒãƒ¼ãƒ : %s" #: lib/command.php:321 #, php-format msgid "Location: %s" -msgstr "" +msgstr "å ´æ‰€: %s" #: lib/command.php:324 #, php-format msgid "Homepage: %s" -msgstr "" +msgstr "ホームページ: %s" #: lib/command.php:327 #, php-format msgid "About: %s" -msgstr "" +msgstr "About: %s" #: lib/command.php:358 scripts/xmppdaemon.php:301 #, php-format msgid "Message too long - maximum is %d characters, you sent %d" -msgstr "" +msgstr "メッセージãŒé•·ã™ãŽã¾ã™ - 最大 %d å—ã€ã‚ãªãŸãŒé€ã£ãŸã®ã¯ %d" #: lib/command.php:378 msgid "Error sending direct message." -msgstr "" +msgstr "ダイレクトメッセージé€ä¿¡ã‚¨ãƒ©ãƒ¼ã€‚" #: lib/command.php:422 msgid "Cannot repeat your own notice" -msgstr "" +msgstr "自分ã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã™ã“ã¨ã¯ã§ãã¾ã›ã‚“" #: lib/command.php:427 -#, fuzzy msgid "Already repeated that notice" -msgstr "ã“ã®é€šçŸ¥ã‚’削除" +msgstr "ã™ã§ã«ã“ã®ã¤ã¶ã‚„ãã¯ç¹°ã‚Šè¿”ã•ã‚Œã¦ã„ã¾ã™" #: lib/command.php:435 -#, fuzzy, php-format +#, php-format msgid "Notice from %s repeated" -msgstr "通知" +msgstr "%s ã‹ã‚‰ã¤ã¶ã‚„ããŒç¹°ã‚Šè¿”ã•ã‚Œã¦ã„ã¾ã™" #: lib/command.php:437 -#, fuzzy msgid "Error repeating notice." -msgstr "通知をä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚" +msgstr "ã¤ã¶ã‚„ãç¹°ã‚Šè¿”ã—エラー" #: lib/command.php:491 #, php-format msgid "Notice too long - maximum is %d characters, you sent %d" -msgstr "" +msgstr "ã¤ã¶ã‚„ããŒé•·ã™ãŽã¾ã™ - 最大 %d å—ã€ã‚ãªãŸãŒé€ã£ãŸã®ã¯ %d" #: lib/command.php:500 -#, fuzzy, php-format +#, php-format msgid "Reply to %s sent" -msgstr "ã“ã®é€šçŸ¥ã¸è¿”ä¿¡" +msgstr "%s ã¸è¿”ä¿¡ã‚’é€ã‚Šã¾ã—ãŸ" #: lib/command.php:502 -#, fuzzy msgid "Error saving notice." -msgstr "通知をä¿å˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚" +msgstr "ã¤ã¶ã‚„ãä¿å˜ã‚¨ãƒ©ãƒ¼ã€‚" #: lib/command.php:556 msgid "Specify the name of the user to subscribe to" -msgstr "" +msgstr "フォãƒãƒ¼ã™ã‚‹åˆ©ç”¨è€…ã®åå‰ã‚’指定ã—ã¦ãã ã•ã„" #: lib/command.php:563 #, php-format msgid "Subscribed to %s" -msgstr "" +msgstr "%s をフォãƒãƒ¼ã—ã¾ã—ãŸ" #: lib/command.php:584 msgid "Specify the name of the user to unsubscribe from" -msgstr "" +msgstr "フォãƒãƒ¼ã‚’ã‚„ã‚るユーザã®åå‰ã‚’指定ã—ã¦ãã ã•ã„" #: lib/command.php:591 #, php-format msgid "Unsubscribed from %s" -msgstr "" +msgstr "%s ã®ãƒ•ã‚©ãƒãƒ¼ã‚’ã‚„ã‚ã‚‹" #: lib/command.php:609 lib/command.php:632 msgid "Command not yet implemented." -msgstr "" +msgstr "コマンドã¯ã¾ã 実装ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: lib/command.php:612 msgid "Notification off." -msgstr "" +msgstr "通知オフ。" #: lib/command.php:614 msgid "Can't turn off notification." -msgstr "" +msgstr "通知をオフã§ãã¾ã›ã‚“。" #: lib/command.php:635 msgid "Notification on." -msgstr "" +msgstr "通知オン。" #: lib/command.php:637 msgid "Can't turn on notification." -msgstr "" +msgstr "通知をオンã§ãã¾ã›ã‚“。" #: lib/command.php:650 msgid "Login command is disabled" -msgstr "" +msgstr "ãƒã‚°ã‚¤ãƒ³ã‚³ãƒžãƒ³ãƒ‰ãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚" #: lib/command.php:664 #, php-format @@ -4512,37 +4546,34 @@ msgstr "%s 用ã®ãƒã‚°ã‚¤ãƒ³ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ã‚’作æˆã§ãã¾ã›ã‚“ã§ã—ãŸ" #: lib/command.php:669 #, php-format msgid "This link is useable only once, and is good for only 2 minutes: %s" -msgstr "" +msgstr "ã“ã®ãƒªãƒ³ã‚¯ã¯ã€ã‹ã¤ã¦ã ã‘使用å¯èƒ½ã§ã‚ã‚Šã€2分間ã ã‘良ã„ã§ã™: %s" #: lib/command.php:685 -#, fuzzy msgid "You are not subscribed to anyone." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã¯ã ã‚Œã«ã‚‚フォãƒãƒ¼ã•ã‚Œã¦ã„ã¾ã›ã‚“。" #: lib/command.php:687 msgid "You are subscribed to this person:" msgid_plural "You are subscribed to these people:" -msgstr[0] "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr[0] "ã‚ãªãŸã¯ã“ã®äººã«ãƒ•ã‚©ãƒãƒ¼ã•ã‚Œã¦ã„ã¾ã™:" #: lib/command.php:707 -#, fuzzy msgid "No one is subscribed to you." -msgstr "リモートサブスクライブ" +msgstr "誰もフォãƒãƒ¼ã—ã¦ã„ã¾ã›ã‚“。" #: lib/command.php:709 msgid "This person is subscribed to you:" msgid_plural "These people are subscribed to you:" -msgstr[0] "リモートサブスクライブ" +msgstr[0] "ã“ã®äººã¯ã‚ãªãŸã«ãƒ•ã‚©ãƒãƒ¼ã•ã‚Œã¦ã„ã‚‹:" #: lib/command.php:729 -#, fuzzy msgid "You are not a member of any groups." -msgstr "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr "ã‚ãªãŸã¯ã©ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã‚‚ã‚ã‚Šã¾ã›ã‚“。" #: lib/command.php:731 msgid "You are a member of this group:" msgid_plural "You are a member of these groups:" -msgstr[0] "ãã®ãƒ—ãƒãƒ•ã‚¡ã‚¤ãƒ«ã¯é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“。" +msgstr[0] "ã‚ãªãŸã¯ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“:" #: lib/command.php:745 msgid "" @@ -4586,81 +4617,81 @@ msgid "" msgstr "" #: lib/common.php:199 -#, fuzzy msgid "No configuration file found. " -msgstr "確èªã‚³ãƒ¼ãƒ‰ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "コンフィギュレーションファイルãŒã‚ã‚Šã¾ã›ã‚“。 " #: lib/common.php:200 msgid "I looked for configuration files in the following places: " -msgstr "" +msgstr "ç§ã¯ä»¥ä¸‹ã®å ´æ‰€ã§ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã‚’探ã—ã¾ã—ãŸ: " #: lib/common.php:201 msgid "You may wish to run the installer to fix this." msgstr "" +"ã‚ãªãŸã¯ã€ã“れを修ç†ã™ã‚‹ãŸã‚ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ©ã‚’å‹•ã‹ã—ãŸãŒã£ã¦ã„ã‚‹ã‹ã‚‚ã—ã‚Œã¾ã›" +"ん。" #: lib/common.php:202 -#, fuzzy msgid "Go to the installer." -msgstr "サイトã¸ãƒã‚°ã‚¤ãƒ³" +msgstr "インストーラã¸ã€‚" #: lib/connectsettingsaction.php:110 msgid "IM" -msgstr "" +msgstr "IM" #: lib/connectsettingsaction.php:111 msgid "Updates by instant messenger (IM)" -msgstr "" +msgstr "インスタントメッセンジャー(IM)ã§ã®æ›´æ–°" #: lib/connectsettingsaction.php:116 msgid "Updates by SMS" -msgstr "" +msgstr "SMSã§ã®æ›´æ–°" #: lib/dberroraction.php:60 msgid "Database error" -msgstr "" +msgstr "データベースエラー" #: lib/designsettings.php:105 -#, fuzzy msgid "Upload file" -msgstr "アップãƒãƒ¼ãƒ‰" +msgstr "ファイルアップãƒãƒ¼ãƒ‰" #: lib/designsettings.php:109 -#, fuzzy msgid "" "You can upload your personal background image. The maximum file size is 2MB." -msgstr "é•·ã™ãŽã¾ã™ã€‚通知ã¯æœ€å¤§ 140 å—ã¾ã§ã§ã™ã€‚" +msgstr "" +"自分ã®ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ç”»åƒã‚’アップãƒãƒ¼ãƒ‰ã§ãã¾ã™ã€‚最大ファイルサイズ㯠2MB ã§" +"ã™ã€‚" #: lib/designsettings.php:418 msgid "Design defaults restored." -msgstr "" +msgstr "デフォルトã®ãƒ‡ã‚¶ã‚¤ãƒ³ã‚’回復。" #: lib/disfavorform.php:114 lib/disfavorform.php:140 msgid "Disfavor this notice" -msgstr "" +msgstr "ã“ã®ã¤ã¶ã‚„ãã®ãŠæ°—ã«å…¥ã‚Šã‚’ã‚„ã‚ã‚‹" #: lib/favorform.php:114 lib/favorform.php:140 msgid "Favor this notice" -msgstr "ã“ã®é€šçŸ¥ã‚’ãŠæ°—ã«å…¥ã‚Šã«ã™ã‚‹" +msgstr "ã“ã®ã¤ã¶ã‚„ãã‚’ãŠæ°—ã«å…¥ã‚Šã«ã™ã‚‹" #: lib/favorform.php:140 msgid "Favor" -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Š" #: lib/feed.php:85 msgid "RSS 1.0" -msgstr "" +msgstr "RSS 1.0" #: lib/feed.php:87 msgid "RSS 2.0" -msgstr "" +msgstr "RSS 2.0" #: lib/feed.php:89 msgid "Atom" -msgstr "" +msgstr "Atom" #: lib/feed.php:91 msgid "FOAF" -msgstr "" +msgstr "FOAF" #: lib/feedlist.php:64 msgid "Export data" @@ -4672,11 +4703,11 @@ msgstr "ã‚¿ã‚°ã®ãƒ•ã‚£ãƒ«ã‚¿ãƒ¼" #: lib/galleryaction.php:131 msgid "All" -msgstr "" +msgstr "å…¨ã¦" #: lib/galleryaction.php:139 msgid "Select tag to filter" -msgstr "" +msgstr "フィルターã«ã‹ã‘ã‚‹ã‚¿ã‚°ã‚’é¸æŠž" #: lib/galleryaction.php:140 msgid "Tag" @@ -4684,7 +4715,7 @@ msgstr "ã‚¿ã‚°" #: lib/galleryaction.php:141 msgid "Choose a tag to narrow list" -msgstr "" +msgstr "ã‚¿ã‚°ã‚’é¸ã‚“ã§ã€ãƒªã‚¹ãƒˆã‚’ç‹ãã—ã¦ãã ã•ã„" #: lib/galleryaction.php:143 msgid "Go" @@ -4695,43 +4726,40 @@ msgid "URL of the homepage or blog of the group or topic" msgstr "グループやトピックã®ãƒ›ãƒ¼ãƒ ページやブãƒã‚°ã® URL" #: lib/groupeditform.php:168 -#, fuzzy msgid "Describe the group or topic" -msgstr "グループやトピックを140å—以内記述" +msgstr "グループやトピックを記述" #: lib/groupeditform.php:170 -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d characters" -msgstr "グループやトピックを140å—以内記述" +msgstr "グループやトピックを %d å—以内記述" #: lib/groupeditform.php:172 msgid "Description" msgstr "概è¦" #: lib/groupeditform.php:179 -#, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"" -msgstr "ã„ã‚‹å ´æ‰€, 例ãˆã° \"City, State (or Region), Country\"" +msgstr "グループã®å ´æ‰€, 例ãˆã° \"都市, 都é“府県 (ã¾ãŸã¯ 地域), 国\"" #: lib/groupeditform.php:187 #, php-format msgid "Extra nicknames for the group, comma- or space- separated, max %d" -msgstr "" +msgstr "グループã®ã‚¨ã‚¯ã‚¹ãƒˆãƒ©ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã€ã‚«ãƒ³ãƒžã¾ãŸã¯ã‚¹ãƒšãƒ¼ã‚¹åŒºåˆ‡ã‚Šã€æœ€å¤§ %d" #: lib/groupnav.php:85 msgid "Group" msgstr "グループ" #: lib/groupnav.php:101 -#, fuzzy msgid "Blocked" msgstr "ブãƒãƒƒã‚¯" #: lib/groupnav.php:102 -#, fuzzy, php-format +#, php-format msgid "%s blocked users" -msgstr "ãã®ã‚ˆã†ãªãƒ¦ãƒ¼ã‚¶ã¯ã„ã¾ã›ã‚“。" +msgstr "%s ブãƒãƒƒã‚¯åˆ©ç”¨è€…" #: lib/groupnav.php:108 #, php-format @@ -4748,9 +4776,9 @@ msgid "Add or edit %s logo" msgstr "%s ãƒã‚´ã®è¿½åŠ や編集" #: lib/groupnav.php:120 -#, fuzzy, php-format +#, php-format msgid "Add or edit %s design" -msgstr "%s ãƒã‚´ã®è¿½åŠ や編集" +msgstr "%s デザインã®è¿½åŠ や編集" #: lib/groupsbymemberssection.php:71 msgid "Groups with most members" @@ -4770,9 +4798,9 @@ msgid "This page is not available in a media type you accept" msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã¯ã‚ãªãŸãŒæ‰¿èªã—ãŸãƒ¡ãƒ‡ã‚£ã‚¢ã‚¿ã‚¤ãƒ—ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" #: lib/imagefile.php:75 -#, fuzzy, php-format +#, php-format msgid "That file is too big. The maximum file size is %s." -msgstr "é•·ã™ãŽã¾ã™ã€‚通知ã¯æœ€å¤§ 140 å—ã¾ã§ã§ã™ã€‚" +msgstr "ファイルãŒå¤§ãã™ãŽã¾ã™ã€‚最大ファイルサイズ㯠%s 。" #: lib/imagefile.php:80 msgid "Partial upload." @@ -4791,21 +4819,20 @@ msgid "Unsupported image file format." msgstr "サãƒãƒ¼ãƒˆå¤–ã®ç”»åƒå½¢å¼ã§ã™ã€‚" #: lib/imagefile.php:118 -#, fuzzy msgid "Lost our file." -msgstr "ãã®ã‚ˆã†ãªé€šçŸ¥ã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "ファイルを紛失。" #: lib/imagefile.php:150 lib/imagefile.php:197 msgid "Unknown file type" -msgstr "" +msgstr "ä¸æ˜Žãªãƒ•ã‚¡ã‚¤ãƒ«ã‚¿ã‚¤ãƒ—" #: lib/imagefile.php:217 msgid "MB" -msgstr "" +msgstr "MB" #: lib/imagefile.php:219 msgid "kB" -msgstr "" +msgstr "kB" #: lib/jabber.php:191 #, php-format @@ -4848,11 +4875,23 @@ msgid "" "Thanks for your time, \n" "%s\n" msgstr "" +"ã“ã‚“ã«ã¡ã¯ã€%s\n" +"\n" +"ã ã‚Œã‹ãŒã“ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’ %s ã«å…¥åŠ›ã—ã¾ã—ãŸã€‚\n" +"\n" +"ã‚‚ã—エントリーを確èªã—ãŸã„ãªã‚‰ã€ä»¥ä¸‹ã®URLを使用ã—ã¦ãã ã•ã„:\n" +"\n" +"%s\n" +"\n" +"ã‚‚ã—ãã†ã§ãªã‘ã‚Œã°ã€ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’無視ã—ã¦ãã ã•ã„。\n" +"\n" +"ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚\n" +"%s\n" #: lib/mail.php:236 #, php-format msgid "%1$s is now listening to your notices on %2$s." -msgstr "%1$s 㯠%2$s ã§ã‚ãªãŸã®é€šçŸ¥ã‚’è³¼èªã—ã¦ã„ã¾ã™ã€‚" +msgstr "%1$s 㯠%2$s ã§ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’èžã„ã¦ã„ã¾ã™ã€‚" #: lib/mail.php:241 #, fuzzy, php-format @@ -4868,12 +4907,16 @@ msgid "" "----\n" "Change your email address or notification options at %8$s\n" msgstr "" -"%1$s 㯠%2$s ã§ã‚ãªãŸã®é€šçŸ¥ã‚’èžã„ã¦ã„ã¾ã™ã€‚\n" +"%1$s 㯠%2$s ã§ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’èžã„ã¦ã„ã¾ã™ã€‚\n" "\n" -"\t%3$s\n" +"%3$s\n" "\n" -"確ã‹ã«ã‚ãªãŸã®,\n" -"%4$s.\n" +"%4$s%5$s%6$s\n" +"å¿ å®Ÿã§ã‚ã‚‹ã€ã‚ãªãŸã®ã‚‚ã®ã€\n" +"%7$s.\n" +"\n" +"----\n" +"%8$s ã§ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‹é€šçŸ¥ã‚ªãƒ—ションを変ãˆã¦ãã ã•ã„。\n" #: lib/mail.php:254 #, php-format @@ -4891,14 +4934,16 @@ msgid "" "Bio: %s\n" "\n" msgstr "" +"自己紹介: %s\n" +"\n" #: lib/mail.php:286 #, php-format msgid "New email address for posting to %s" -msgstr "" +msgstr "%s ã¸æŠ•ç¨¿ã®ãŸã‚ã®æ–°ã—ã„メールアドレス" #: lib/mail.php:289 -#, php-format +#, fuzzy, php-format msgid "" "You have a new posting address on %1$s.\n" "\n" @@ -4909,6 +4954,14 @@ msgid "" "Faithfully yours,\n" "%4$s" msgstr "" +"ã‚ãªãŸã¯ %1$s ã«é–¢ã™ã‚‹æ–°ã—ã„投稿アドレスをæŒã£ã¦ã„ã¾ã™ã€‚\n" +"\n" +"%2$s ã«ãƒ¡ãƒ¼ãƒ«ã‚’é€ã£ã¦ã€æ–°ã—ã„メッセージを投稿ã—ã¦ãã ã•ã„。\n" +"\n" +"%3$s ã§ã‚ˆã‚Šå¤šãã®ãƒ¡ãƒ¼ãƒ«æŒ‡ç¤ºã€‚\n" +"\n" +"å¿ å®Ÿã§ã‚ã‚‹ã€ã‚ãªãŸã®ã‚‚ã®ã€\n" +"%4$s" #: lib/mail.php:413 #, php-format @@ -4917,15 +4970,15 @@ msgstr "%s ã®çŠ¶æ…‹" #: lib/mail.php:439 msgid "SMS confirmation" -msgstr "" +msgstr "SMS確èª" #: lib/mail.php:463 #, php-format msgid "You've been nudged by %s" -msgstr "ã‚ãªãŸã¯ %s ã«çªã‹ã‚Œã¦ã„ã¾ã™" +msgstr "ã‚ãªãŸã¯ %s ã«åˆå›³ã•ã‚Œã¦ã„ã¾ã™" #: lib/mail.php:467 -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " "to post some news.\n" @@ -4939,14 +4992,25 @@ msgid "" "With kind regards,\n" "%4$s\n" msgstr "" +"%1$s ($2$s) ã¯ã€æœ€è¿‘ã¾ã§ã‚ãªãŸãŒä½•ã§ã‚ã‚‹ã‹ã¨æ€ã£ã¦ã„ã¦ã€ã‚ãªãŸãŒä½•ã‚‰ã‹ã®" +"ニュースを投稿ã™ã‚‹ã‚ˆã†èª˜ã£ã¦ã„ã¾ã™ã€‚\n" +"\n" +"ãã‚Œã§ã€ã‚ãªãŸã‹ã‚‰ã€é€£çµ¡ã‚’ã„ãŸã ãã¾ã—ょㆠ:)\n" +"\n" +"%3$s\n" +"\n" +"ã“ã®ãƒ¡ãƒ¼ãƒ«ã«ç”ãˆãªã„ã§ãã ã•ã„。 ãã‚Œã¯ãれらを始ã‚ãªã„ã§ã—ょã†ã€‚\n" +"\n" +"敬具\n" +"%4$s\n" #: lib/mail.php:510 #, php-format msgid "New private message from %s" -msgstr "" +msgstr "%s ã‹ã‚‰ã®æ–°ã—ã„プライベートメッセージ" #: lib/mail.php:514 -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -4963,14 +5027,28 @@ msgid "" "With kind regards,\n" "%5$s\n" msgstr "" +"%1$s (%2$s) ã¯ã‚ãªãŸã«ãƒ—ライベートメッセージをé€ã‚Šã¾ã—ãŸï¼š\n" +"\n" +"------------------------------------------------------\n" +"%3$s\n" +"------------------------------------------------------\n" +"\n" +"ã‚ãªãŸã¯ã“ã“ã§ãれらã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ç”ãˆã‚‹ã“ã¨ãŒã§ãã¾ã™:\n" +"\n" +"%4$s\n" +"\n" +"ã“ã®ãƒ¡ãƒ¼ãƒ«ã«ç”ãˆãªã„ã§ãã ã•ã„。 ãã‚Œã¯ãれらを始ã‚ãªã„ã§ã—ょã†ã€‚\n" +"\n" +"敬具\n" +"%5$s\n" #: lib/mail.php:559 -#, fuzzy, php-format +#, php-format msgid "%s (@%s) added your notice as a favorite" -msgstr "%1$s 㯠%2$s ã§ã‚ãªãŸã®é€šçŸ¥ã‚’èžã„ã¦ã„ã¾ã™ã€‚" +msgstr "%s (@%s) ã¯ãŠæ°—ã«å…¥ã‚Šã¨ã—ã¦ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’åŠ ãˆã¾ã—ãŸ" #: lib/mail.php:561 -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -4989,11 +5067,28 @@ msgid "" "Faithfully yours,\n" "%6$s\n" msgstr "" +"%1$s (@%7$s) ã¯å½¼ã‚‰ã®ãŠæ°—ã«å…¥ã‚Šã®ã²ã¨ã‚Šã¨ã—㦠%2$s ã‹ã‚‰ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’åŠ ãˆ" +"ã¾ã—ãŸã€‚\n" +"\n" +"ã‚ãªãŸã®ã¤ã¶ã‚„ãã®ï¼µï¼²ï¼¬:\n" +"\n" +"%3$s\n" +"\n" +"ã‚ãªãŸã®ã¤ã¶ã‚„ãã®ãƒ†ã‚スト:\n" +"\n" +"%4$s\n" +"\n" +"ã‚ãªãŸã¯ã“ã“㧠%1$s ã®ãŠæ°—ã«å…¥ã‚Šã®ãƒªã‚¹ãƒˆã‚’見るã“ã¨ãŒã§ãã¾ã™:\n" +"\n" +"%5$s\n" +"\n" +"å¿ å®Ÿã§ã‚ã‚‹ã€ã‚ãªãŸã®ã‚‚ã®ã€\n" +"%6%s\n" #: lib/mail.php:624 #, php-format msgid "%s (@%s) sent a notice to your attention" -msgstr "" +msgstr "%s (@%s) ã¯ã‚ãªãŸå®›ã¦ã«ã¤ã¶ã‚„ãã‚’é€ã‚Šã¾ã—ãŸ" #: lib/mail.php:626 #, php-format @@ -5009,162 +5104,185 @@ msgid "" "\t%4$s\n" "\n" msgstr "" +"%1$s (@%9$s) ã¯ã‚ãªãŸå®›ã¦ã«(@-返信) %2$s ã§ã¤ã¶ã‚„ãã‚’é€ã‚Šã¾ã—ãŸã€‚\n" +"\n" +"ã¤ã¶ã‚„ãã¯ã“ã“:\n" +"\n" +"%3$s\n" +"\n" +"ã“れをèªã‚€:\n" +"\n" +"%4$s\n" +"\n" #: lib/mailbox.php:89 msgid "Only the user can read their own mailboxes." -msgstr "" +msgstr "利用者ã ã‘ãŒãれら自身ã®ãƒ¡ãƒ¼ãƒ«ãƒœãƒƒã‚¯ã‚¹ã‚’èªã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚" #: lib/mailbox.php:139 msgid "" "You have no private messages. You can send private message to engage other " "users in conversation. People can send you messages for your eyes only." msgstr "" +"ã‚ãªãŸã«ã¯ã€ãƒ—ライベートメッセージãŒå…¨ãã‚ã‚Šã¾ã›ã‚“。ã‚ãªãŸã¯ä»–ã®åˆ©ç”¨è€…を会話" +"ã«å¼•ã込むプライベートメッセージをé€ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚人々ã¯ã‚ãªãŸã ã‘ã¸ã®" +"メッセージをé€ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" -msgstr "ã‹ã‚‰ " +msgstr "from" #: lib/mediafile.php:98 lib/mediafile.php:123 msgid "There was a database error while saving your file. Please try again." msgstr "" +"データベースエラーãŒã‚ãªãŸã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿å˜ã—ã¦ã„ã‚‹ã¨ãã«ã‚ã‚Šã¾ã—ãŸã€‚ å†è©¦è¡Œã—" +"ã¦ãã ã•ã„。" #: lib/mediafile.php:142 msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini." msgstr "" +"アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã¯ php.ini ã® upload_max_filesize ディレクティブを" +"超ãˆã¦ã„ã¾ã™ã€‚" #: lib/mediafile.php:147 msgid "" "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " "the HTML form." msgstr "" +"アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã¯HTMLフォームã§æŒ‡å®šã•ã‚ŒãŸ MAX_FILE_SIZE ディレク" +"ティブを超ãˆã¦ã„ã¾ã™ã€‚" #: lib/mediafile.php:152 msgid "The uploaded file was only partially uploaded." -msgstr "" +msgstr "アップãƒãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã¯éƒ¨åˆ†çš„ã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•ã‚Œã¦ã„ãŸã ã‘ã§ã™ã€‚" #: lib/mediafile.php:159 msgid "Missing a temporary folder." -msgstr "" +msgstr "一時フォルダを失ã„ã¾ã—ãŸã€‚" #: lib/mediafile.php:162 msgid "Failed to write file to disk." -msgstr "" +msgstr "ディスクã¸ã®ãƒ•ã‚¡ã‚¤ãƒ«æ›¸ãè¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚" #: lib/mediafile.php:165 msgid "File upload stopped by extension." -msgstr "" +msgstr "エクステンションã«ã‚ˆã£ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã‚’ä¸æ¢ã—ã¾ã—ãŸã€‚" #: lib/mediafile.php:179 lib/mediafile.php:216 msgid "File exceeds user's quota!" -msgstr "" +msgstr "ファイルã¯ãƒ¦ãƒ¼ã‚¶ã®å‰²å½“ã¦ã‚’超ãˆã¦ã„ã¾ã™!" #: lib/mediafile.php:196 lib/mediafile.php:233 msgid "File could not be moved to destination directory." -msgstr "" +msgstr "ファイルを目的ディレクトリã«å‹•ã‹ã™ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" #: lib/mediafile.php:201 lib/mediafile.php:237 -#, fuzzy msgid "Could not determine file's mime-type!" -msgstr "ユーザを更新ã§ãã¾ã›ã‚“" +msgstr "ファイルã®MIMEタイプを決定ã§ãã¾ã›ã‚“" #: lib/mediafile.php:270 #, php-format msgid " Try using another %s format." -msgstr "" +msgstr "別㮠%s フォーマットを試ã—ã¦ãã ã•ã„。" #: lib/mediafile.php:275 #, php-format msgid "%s is not a supported filetype on this server." -msgstr "" +msgstr "%s ã¯ã“ã®ã‚µãƒ¼ãƒã®ã‚µãƒãƒ¼ãƒˆã—ã¦ã„るファイルタイプã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: lib/messageform.php:120 msgid "Send a direct notice" -msgstr "直接通知をé€ã‚‹" +msgstr "直接ã¤ã¶ã‚„ãã‚’é€ã‚‹" #: lib/messageform.php:146 msgid "To" -msgstr "" +msgstr "To" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "利用å¯èƒ½ãªæ–‡å—" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" -msgstr "通知をé€ã‚‹" +msgstr "ã¤ã¶ã‚„ãã‚’é€ã‚‹" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "最近ã©ã† %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" -msgstr "" +msgstr "添付" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" -msgstr "" +msgstr "ファイル添付" + +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "ã‚ãªãŸã®å ´æ‰€ã‚’共有" -#: lib/noticelist.php:420 +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 +#, fuzzy msgid "N" -msgstr "" +msgstr "北" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 +#, fuzzy msgid "S" -msgstr "" +msgstr "å—" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 +#, fuzzy msgid "E" -msgstr "" +msgstr "æ±" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 +#, fuzzy msgid "W" -msgstr "" +msgstr "西" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" -msgstr "" +msgstr "at" -#: lib/noticelist.php:523 -#, fuzzy +#: lib/noticelist.php:531 msgid "in context" -msgstr "コンテンツãŒã‚ã‚Šã¾ã›ã‚“ï¼" +msgstr "" -#: lib/noticelist.php:548 -#, fuzzy +#: lib/noticelist.php:556 msgid "Repeated by" -msgstr "作æˆ" +msgstr "" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" -msgstr "ã“ã®é€šçŸ¥ã¸è¿”ä¿¡" +msgstr "ã“ã®ã¤ã¶ã‚„ãã¸è¿”ä¿¡" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "返信" -#: lib/noticelist.php:620 -#, fuzzy +#: lib/noticelist.php:628 msgid "Notice repeated" -msgstr "通知" +msgstr "ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¾ã—ãŸ" #: lib/nudgeform.php:116 msgid "Nudge this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’çªã" +msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã¸åˆå›³" #: lib/nudgeform.php:128 msgid "Nudge" -msgstr "çªã" +msgstr "åˆå›³" #: lib/nudgeform.php:128 msgid "Send a nudge to this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã¸çªãã‚’é€ã‚‹" +msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã¸åˆå›³ã‚’é€ã‚‹" #: lib/oauthstore.php:283 msgid "Error inserting new profile" @@ -5179,13 +5297,12 @@ msgid "Error inserting remote profile" msgstr "リモートプãƒãƒ•ã‚¡ã‚¤ãƒ«è¿½åŠ エラー" #: lib/oauthstore.php:345 -#, fuzzy msgid "Duplicate notice" -msgstr "æ–°ã—ã„通知" +msgstr "é‡è¤‡ã—ãŸã¤ã¶ã‚„ã" #: lib/oauthstore.php:466 lib/subs.php:48 msgid "You have been banned from subscribing." -msgstr "" +msgstr "ã‚ãªãŸã¯ãƒ•ã‚©ãƒãƒ¼ãŒç¦æ¢ã•ã‚Œã¾ã—ãŸã€‚" #: lib/oauthstore.php:491 msgid "Couldn't insert new subscription." @@ -5201,49 +5318,48 @@ msgstr "返信" #: lib/personalgroupnav.php:114 msgid "Favorites" -msgstr "" +msgstr "ãŠæ°—ã«å…¥ã‚Š" #: lib/personalgroupnav.php:124 msgid "Inbox" -msgstr "" +msgstr "å—ä¿¡ç®±" #: lib/personalgroupnav.php:125 msgid "Your incoming messages" -msgstr "" +msgstr "ã‚ãªãŸã®å…¥ã£ã¦ãるメッセージ" #: lib/personalgroupnav.php:129 msgid "Outbox" -msgstr "" +msgstr "é€ä¿¡ç®±" #: lib/personalgroupnav.php:130 msgid "Your sent messages" -msgstr "" +msgstr "ã‚ãªãŸãŒé€ã£ãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸" #: lib/personaltagcloudsection.php:56 #, php-format msgid "Tags in %s's notices" -msgstr "" +msgstr "%s ã®ã¤ã¶ã‚„ãã®ã‚¿ã‚°" #: lib/profileaction.php:109 lib/profileaction.php:192 lib/subgroupnav.php:82 msgid "Subscriptions" -msgstr "サブスクリプション" +msgstr "フォãƒãƒ¼" #: lib/profileaction.php:126 msgid "All subscriptions" -msgstr "ã™ã¹ã¦ã®è³¼èª" +msgstr "ã™ã¹ã¦ã®ãƒ•ã‚©ãƒãƒ¼" #: lib/profileaction.php:140 lib/profileaction.php:201 lib/subgroupnav.php:90 msgid "Subscribers" -msgstr "è³¼èªè€…" +msgstr "フォãƒãƒ¼ã•ã‚Œã¦ã„ã‚‹" #: lib/profileaction.php:157 -#, fuzzy msgid "All subscribers" -msgstr "è³¼èªè€…" +msgstr "ã™ã¹ã¦ã®ãƒ•ã‚©ãƒãƒ¼ã•ã‚Œã¦ã„ã‚‹" #: lib/profileaction.php:178 msgid "User ID" -msgstr "" +msgstr "利用者ID" #: lib/profileaction.php:183 msgid "Member since" @@ -5251,16 +5367,15 @@ msgstr "ã‹ã‚‰ã®ãƒ¡ãƒ³ãƒãƒ¼" #: lib/profileaction.php:245 msgid "All groups" -msgstr "" +msgstr "å…¨ã¦ã®ã‚°ãƒ«ãƒ¼ãƒ—" #: lib/profileformaction.php:123 -#, fuzzy msgid "No return-to arguments." -msgstr "ãã®ã‚ˆã†ãªãƒ‰ã‚ュメントã¯ã‚ã‚Šã¾ã›ã‚“。" +msgstr "return-to 引数ãŒã‚ã‚Šã¾ã›ã‚“。" #: lib/profileformaction.php:137 msgid "Unimplemented method." -msgstr "" +msgstr "未実装ã®ãƒ¡ã‚½ãƒƒãƒ‰ã€‚" #: lib/publicgroupnav.php:78 msgid "Public" @@ -5276,56 +5391,51 @@ msgstr "最近ã®ã‚¿ã‚°" #: lib/publicgroupnav.php:88 msgid "Featured" -msgstr "" +msgstr "フィーãƒãƒ£ãƒ¼ã•ã‚ŒãŸ" #: lib/publicgroupnav.php:92 msgid "Popular" msgstr "人気" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "ã“ã®é€šçŸ¥ã¸è¿”ä¿¡" +msgstr "ã“ã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¾ã™ã‹?" #: lib/repeatform.php:132 -#, fuzzy msgid "Repeat this notice" -msgstr "ã“ã®é€šçŸ¥ã¸è¿”ä¿¡" +msgstr "ã“ã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã™" #: lib/sandboxform.php:67 msgid "Sandbox" -msgstr "" +msgstr "サンドボックス" #: lib/sandboxform.php:78 -#, fuzzy msgid "Sandbox this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブãƒãƒƒã‚¯ã™ã‚‹" +msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’サンドボックス" #: lib/searchaction.php:120 -#, fuzzy msgid "Search site" -msgstr "検索" +msgstr "サイト検索" #: lib/searchaction.php:126 msgid "Keyword(s)" -msgstr "" +msgstr "ã‚ーワード" #: lib/searchaction.php:162 -#, fuzzy msgid "Search help" -msgstr "検索" +msgstr "ヘルプ検索" #: lib/searchgroupnav.php:80 msgid "People" -msgstr "" +msgstr "人々" #: lib/searchgroupnav.php:81 msgid "Find people on this site" -msgstr "" +msgstr "ã“ã®ã‚µã‚¤ãƒˆã®äººã€…を探ã™" #: lib/searchgroupnav.php:83 msgid "Find content of notices" -msgstr "" +msgstr "ã¤ã¶ã‚„ãã®å†…容を探ã™" #: lib/searchgroupnav.php:85 msgid "Find groups on this site" @@ -5337,73 +5447,68 @@ msgstr "å称未è¨å®šã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³" #: lib/section.php:106 msgid "More..." -msgstr "" +msgstr "ã•ã‚‰ã«..." #: lib/silenceform.php:67 -#, fuzzy msgid "Silence" -msgstr "æ–°ã—ã„通知" +msgstr "サイレンス" #: lib/silenceform.php:78 -#, fuzzy msgid "Silence this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブãƒãƒƒã‚¯ã™ã‚‹" +msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’サイレンスã«" #: lib/subgroupnav.php:83 -#, fuzzy, php-format +#, php-format msgid "People %s subscribes to" -msgstr "リモートサブスクライブ" +msgstr "人々 %s ã¯ãƒ•ã‚©ãƒãƒ¼" #: lib/subgroupnav.php:91 -#, fuzzy, php-format +#, php-format msgid "People subscribed to %s" -msgstr "リモートサブスクライブ" +msgstr "人々㯠%s をフォãƒãƒ¼ã—ã¾ã—ãŸã€‚" #: lib/subgroupnav.php:99 #, php-format msgid "Groups %s is a member of" -msgstr "" +msgstr "グループ %s ã¯ãƒ¡ãƒ³ãƒãƒ¼" #: lib/subs.php:52 msgid "Already subscribed!" -msgstr "" +msgstr "ã™ã§ã«ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„ã¾ã™!" #: lib/subs.php:56 -#, fuzzy msgid "User has blocked you." -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚Šã¾ã›ã‚“。" +msgstr "利用者ã¯ã‚ãªãŸã‚’ブãƒãƒƒã‚¯ã—ã¾ã—ãŸã€‚" #: lib/subs.php:60 msgid "Could not subscribe." -msgstr "" +msgstr "フォãƒãƒ¼ã§ãã¾ã›ã‚“。" #: lib/subs.php:79 msgid "Could not subscribe other to you." -msgstr "" +msgstr "ä»–ã®äººãŒã‚ãªãŸã‚’フォãƒãƒ¼ã§ãã¾ã›ã‚“。" #: lib/subs.php:128 -#, fuzzy msgid "Not subscribed!" -msgstr "è³¼èªã—ã¦ã„ã¾ã›ã‚“ï¼" +msgstr "フォãƒãƒ¼ã—ã¦ã„ã¾ã›ã‚“ï¼" #: lib/subs.php:133 -#, fuzzy msgid "Couldn't delete self-subscription." -msgstr "サブスクリプションを削除ã§ãã¾ã›ã‚“" +msgstr "自己フォãƒãƒ¼ã‚’削除ã§ãã¾ã›ã‚“。" #: lib/subs.php:146 msgid "Couldn't delete subscription." -msgstr "サブスクリプションを削除ã§ãã¾ã›ã‚“" +msgstr "フォãƒãƒ¼ã‚’削除ã§ãã¾ã›ã‚“" #: lib/subscriberspeopleselftagcloudsection.php:48 #: lib/subscriptionspeopleselftagcloudsection.php:48 msgid "People Tagcloud as self-tagged" -msgstr "" +msgstr "自己タグã¥ã‘ã¨ã—ã¦ã®äººã€…タグクラウド" #: lib/subscriberspeopletagcloudsection.php:48 #: lib/subscriptionspeopletagcloudsection.php:48 msgid "People Tagcloud as tagged" -msgstr "" +msgstr "タグ付ã‘ã¨ã—ã¦ã®äººã€…タグクラウド" #: lib/subscriptionlist.php:126 msgid "(none)" @@ -5411,7 +5516,7 @@ msgstr "(ãªã—)" #: lib/tagcloudsection.php:56 msgid "None" -msgstr "" +msgstr "ãªã—" #: lib/topposterssection.php:74 msgid "Top posters" @@ -5419,59 +5524,56 @@ msgstr "上ä½æŠ•ç¨¿è€…" #: lib/unsandboxform.php:69 msgid "Unsandbox" -msgstr "" +msgstr "アンサンドボックス" #: lib/unsandboxform.php:80 -#, fuzzy msgid "Unsandbox this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブãƒãƒƒã‚¯ã™ã‚‹" +msgstr "ã“ã®åˆ©ç”¨è€…をアンサンドボックス" #: lib/unsilenceform.php:67 msgid "Unsilence" -msgstr "" +msgstr "アンサイレンス" #: lib/unsilenceform.php:78 -#, fuzzy msgid "Unsilence this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブãƒãƒƒã‚¯ã™ã‚‹" +msgstr "ã“ã®åˆ©ç”¨è€…をアンサイレンス" #: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137 msgid "Unsubscribe from this user" -msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‹ã‚‰ã®ã‚µãƒ–スクライブを解除ã™ã‚‹" +msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‹ã‚‰ã®ãƒ•ã‚©ãƒãƒ¼ã‚’解除ã™ã‚‹" #: lib/unsubscribeform.php:137 msgid "Unsubscribe" -msgstr "サブスクライブä¸æ¢" +msgstr "フォãƒãƒ¼è§£é™¤" #: lib/userprofile.php:116 -#, fuzzy msgid "Edit Avatar" -msgstr "ã‚¢ãƒã‚¿ãƒ¼" +msgstr "ã‚¢ãƒã‚¿ãƒ¼ã‚’編集ã™ã‚‹" #: lib/userprofile.php:236 msgid "User actions" -msgstr "" +msgstr "利用者アクション" #: lib/userprofile.php:248 -#, fuzzy msgid "Edit profile settings" -msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«è¨å®š" +msgstr "プãƒãƒ•ã‚¡ã‚¤ãƒ«è¨å®šç·¨é›†" #: lib/userprofile.php:249 msgid "Edit" -msgstr "" +msgstr "編集" #: lib/userprofile.php:272 msgid "Send a direct message to this user" -msgstr "" +msgstr "ã“ã®åˆ©ç”¨è€…ã«ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹" #: lib/userprofile.php:273 msgid "Message" -msgstr "" +msgstr "メッセージ" #: lib/userprofile.php:311 +#, fuzzy msgid "Moderate" -msgstr "" +msgstr "å¸ä¼š" #: lib/util.php:837 msgid "a few seconds ago" @@ -5518,27 +5620,27 @@ msgid "about a year ago" msgstr "ç´„ 1 å¹´å‰" #: lib/webcolor.php:82 -#, fuzzy, php-format +#, php-format msgid "%s is not a valid color!" -msgstr "ホームページã®URLãŒä¸é©åˆ‡ã§ã™ã€‚" +msgstr "%sã¯æœ‰åŠ¹ãªè‰²ã§ã¯ã‚ã‚Šã¾ã›ã‚“!" #: lib/webcolor.php:123 #, php-format msgid "%s is not a valid color! Use 3 or 6 hex chars." -msgstr "" +msgstr "%s ã¯æœ‰åŠ¹ãªè‰²ã§ã¯ã‚ã‚Šã¾ã›ã‚“! 3ã‹6ã®16進数を使ã£ã¦ãã ã•ã„。" #: scripts/maildaemon.php:48 msgid "Could not parse message." -msgstr "" +msgstr "メッセージを分æžã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" #: scripts/maildaemon.php:53 msgid "Not a registered user." -msgstr "" +msgstr "登録ユーザã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: scripts/maildaemon.php:57 msgid "Sorry, that is not your incoming email address." -msgstr "" +msgstr "ã™ã¿ã¾ã›ã‚“ã€ãã‚Œã¯ã‚ãªãŸã®å…¥ã£ã¦æ¥ã‚‹ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。" #: scripts/maildaemon.php:61 msgid "Sorry, no incoming email allowed." -msgstr "" +msgstr "ã™ã¿ã¾ã›ã‚“ã€å…¥ã£ã¦ãるメールã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。" diff --git a/locale/ko/LC_MESSAGES/statusnet.po b/locale/ko/LC_MESSAGES/statusnet.po index c861fdd5a..e90f2d338 100644 --- a/locale/ko/LC_MESSAGES/statusnet.po +++ b/locale/ko/LC_MESSAGES/statusnet.po @@ -7,12 +7,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:16+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:54+0000\n" "Language-Team: Korean\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ko\n" "X-Message-Group: out-statusnet\n" @@ -193,11 +193,11 @@ msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í• ìˆ˜ 없습니다." msgid "You cannot block yourself!" msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í• ìˆ˜ 없습니다." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "ì‚¬ìš©ìž ì°¨ë‹¨ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "ì‚¬ìš©ìž ì°¨ë‹¨ í•´ì œì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤." @@ -314,7 +314,7 @@ msgid "Could not find target user." msgstr "ì–´ë– í•œ ìƒíƒœë„ ì°¾ì„ ìˆ˜ 없습니다." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -322,25 +322,25 @@ msgstr "" "다." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "ë³„ëª…ì´ ì´ë¯¸ 사용중 입니다. 다른 ë³„ëª…ì„ ì‹œë„í•´ ë³´ì‹ì‹œì˜¤." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "ìœ íš¨í•œ ë³„ëª…ì´ ì•„ë‹™ë‹ˆë‹¤" #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "홈페ì´ì§€ 주소형ì‹ì´ 올바르지 않습니다." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "ì‹¤ëª…ì´ ë„ˆë¬´ ê¹ë‹ˆë‹¤. (최대 255글ìž)" @@ -351,7 +351,7 @@ msgid "Description is too long (max %d chars)." msgstr "ì„¤ëª…ì´ ë„ˆë¬´ 길어요. (최대 140글ìž)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "위치가 너무 ê¹ë‹ˆë‹¤. (최대 255글ìž)" @@ -472,7 +472,7 @@ msgstr "너무 ê¹ë‹ˆë‹¤. í†µì§€ì˜ ìµœëŒ€ 길ì´ëŠ” 140ê¸€ìž ìž…ë‹ˆë‹¤." msgid "Not found" msgstr "찾지 못함" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -603,7 +603,7 @@ msgid "Preview" msgstr "미리보기" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "ì‚ì œ" @@ -616,13 +616,13 @@ msgid "Crop" msgstr "ìžë¥´ê¸°" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -695,7 +695,7 @@ msgstr "네, 맞습니다." msgid "Block this user" msgstr "ì´ ì‚¬ìš©ìž ì°¨ë‹¨í•˜ê¸°" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "ì •ë³´ì°¨ë‹¨ì„ ì €ìž¥í•˜ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤." @@ -770,7 +770,7 @@ msgstr "ê·¸ 주소는 ì´ë¯¸ 승ì¸ë˜ì—ˆìŠµë‹ˆë‹¤." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í• ìˆ˜ 없습니다." @@ -834,7 +834,7 @@ msgstr "ì •ë§ë¡œ 통지를 ì‚ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ?" msgid "Do not delete this notice" msgstr "ì´ í†µì§€ë¥¼ 지울 수 없습니다." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "ì´ ê²Œì‹œê¸€ ì‚ì œí•˜ê¸°" @@ -983,7 +983,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1493,7 +1493,7 @@ msgstr "%s 그룹 회ì›, %d페ì´ì§€" msgid "A list of the users in this group." msgstr "ì´ ê·¸ë£¹ì˜ íšŒì›ë¦¬ìŠ¤íŠ¸" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "관리ìž" @@ -1586,7 +1586,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "회ì›ì´ ë‹¹ì‹ ì„ ì°¨ë‹¨í•´ì™”ìŠµë‹ˆë‹¤." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "차단 ì œê±° ì—러!" @@ -1767,7 +1767,7 @@ msgstr "ê°œì¸ì ì¸ ë©”ì‹œì§€" msgid "Optionally add a personal message to the invitation." msgstr "ì´ˆëŒ€ìž¥ì— ë©”ì‹œì§€ 첨부하기." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "보내기" @@ -1886,7 +1886,7 @@ msgstr "틀린 ê³„ì • ë˜ëŠ” 비밀 번호" msgid "Error setting user. You are probably not authorized." msgstr "ì¸ì¦ì´ ë˜ì§€ 않았습니다." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "로그ì¸" @@ -1999,7 +1999,7 @@ msgstr "메시지" msgid "Direct message to %s sent" msgstr "%sì—게 보낸 ì§ì ‘ 메시지" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax ì—러입니다." @@ -2007,7 +2007,7 @@ msgstr "Ajax ì—러입니다." msgid "New notice" msgstr "새로운 통지" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "ê²Œì‹œê¸€ì´ ë“±ë¡ë˜ì—ˆìŠµë‹ˆë‹¤." @@ -2444,69 +2444,78 @@ msgstr "위치" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "ë‹¹ì‹ ì€ ì–´ë””ì— ì‚½ë‹ˆê¹Œ? \"ì‹œ, ë„ (or êµ°,구), 나ë¼" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "태그" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "ë‹¹ì‹ ì„ ìœ„í•œ 태그, (문ìž,숫ìž,-, ., _ë¡œ 구성) 콤마 í˜¹ì€ ê³µë°±ìœ¼ë¡œ 구분." -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "언어" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "언어 ì„¤ì •" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "타임존" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "ë‹¹ì‹ ì´ ì£¼ë¡œ ìƒí™œí•˜ëŠ” ê³³ì´ ì–´ë–¤ 타임존입니까?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "나ì—게 구ë…하는 사람ì—게 ìžë™ êµ¬ë… ì‹ ì²" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "ìžê¸°ì†Œê°œê°€ 너무 ê¹ë‹ˆë‹¤. (최대 140글ìž)" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "íƒ€ìž„ì¡´ì´ ì„¤ì • ë˜ì§€ 않았습니다." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "언어가 너무 ê¹ë‹ˆë‹¤. (최대 50글ìž)" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "ìœ íš¨í•˜ì§€ ì•Šì€íƒœê·¸: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "ìžë™êµ¬ë…ì— ì‚¬ìš©ìžë¥¼ ì—…ë°ì´íŠ¸ í• ìˆ˜ 없습니다." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "태그를 ì €ìž¥í• ìˆ˜ 없습니다." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "í”„ë¡œí•„ì„ ì €ìž¥ í• ìˆ˜ 없습니다." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "태그를 ì €ìž¥í• ìˆ˜ 없습니다." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ì„¤ì • ì €ìž¥" @@ -2604,7 +2613,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "태그 í´ë¼ìš°ë“œ" @@ -2742,7 +2751,7 @@ msgstr "í™•ì¸ ì½”ë“œ 오류" msgid "Registration successful" msgstr "íšŒì› ê°€ìž…ì´ ì„±ê³µì 입니다." -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "회ì›ê°€ìž…" @@ -2936,7 +2945,7 @@ msgstr "ë¼ì´ì„ ìŠ¤ì— ë™ì˜í•˜ì§€ 않는다면 등ë¡í• 수 없습니다." msgid "You already repeated that notice." msgstr "ë‹¹ì‹ ì€ ì´ë¯¸ ì´ ì‚¬ìš©ìžë¥¼ ì°¨ë‹¨í•˜ê³ ìžˆìŠµë‹ˆë‹¤." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "ìƒì„±" @@ -4071,16 +4080,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "ì´ ì‚¬ì´íŠ¸ì— 게시글 í¬ìŠ¤íŒ…으로부터 ë‹¹ì‹ ì€ ê¸ˆì§€ë˜ì—ˆìŠµë‹ˆë‹¤." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "통지를 ì €ìž¥í•˜ëŠ”ë° ë¬¸ì œê°€ ë°œìƒí–ˆìŠµë‹ˆë‹¤." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "ë‹µì‹ ì„ ì¶”ê°€ í• ë•Œì— ë°ì´íƒ€ë² ì´ìŠ¤ ì—러 : %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4136,131 +4145,131 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "ì œëª©ì—†ëŠ” 페ì´ì§€" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "주 사ì´íŠ¸ 네비게ì´ì…˜" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "홈" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "ê°œì¸ í”„ë¡œí•„ê³¼ 친구 타임ë¼ì¸" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "ê³„ì •" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "ë‹¹ì‹ ì˜ ì´ë©”ì¼, 아바타, 비밀 번호, í”„ë¡œí•„ì„ ë³€ê²½í•˜ì„¸ìš”." -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "ì—°ê²°" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "ì„œë²„ì— ìž¬ì ‘ì† í• ìˆ˜ 없습니다 : %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "주 사ì´íŠ¸ 네비게ì´ì…˜" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "초대" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "%sì— ì¹œêµ¬ë¥¼ 가입시키기 위해 친구와 ë™ë£Œë¥¼ 초대합니다." -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "로그아웃" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "ì´ ì‚¬ì´íŠ¸ë¡œë¶€í„° 로그아웃" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "ê³„ì • 만들기" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "ì´ ì‚¬ì´íŠ¸ 로그ì¸" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "ë„움ë§" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "ë„ì›€ì´ í•„ìš”í•´!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "검색" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "프로필ì´ë‚˜ í…스트 검색" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "사ì´íŠ¸ 공지" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "로컬 ë·°" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "페ì´ì§€ 공지" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "ë³´ì¡° 사ì´íŠ¸ 네비게ì´ì…˜" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "ì •ë³´" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "ìžì£¼ 묻는 질문" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "ê°œì¸ì •ë³´ 취급방침" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "소스 코드" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "ì—°ë½í•˜ê¸°" -#: lib/action.php:741 +#: lib/action.php:742 #, fuzzy msgid "Badge" msgstr "찔러 보기" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "ë¼ì½”니카 소프트웨어 ë¼ì´ì„ 스" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4269,12 +4278,12 @@ msgstr "" "**%%site.name%%** 는 [%%site.broughtby%%](%%site.broughtbyurl%%)ê°€ ì œê³µí•˜ëŠ” " "마ì´í¬ë¡œë¸”로깅서비스입니다." -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** 는 마ì´í¬ë¡œë¸”로깅서비스입니다." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4285,32 +4294,32 @@ msgstr "" "ì„ ì‚¬ìš©í•©ë‹ˆë‹¤. StatusNet는 [GNU Affero General Public License](http://www." "fsf.org/licensing/licenses/agpl-3.0.html) ë¼ì´ì„ ìŠ¤ì— ë”°ë¼ ì‚¬ìš©í• ìˆ˜ 있습니다." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "ë¼ì½”니카 소프트웨어 ë¼ì´ì„ 스" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "ëª¨ë“ ê²ƒ" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "ë¼ì´ì„ 스" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "페ì´ì§€ìˆ˜" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "ë’· 페ì´ì§€" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "ì•ž 페ì´ì§€" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "ë‹¹ì‹ ì˜ ì„¸ì…˜í† í°ê´€ë ¨ ë¬¸ì œê°€ 있습니다." @@ -4370,6 +4379,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "비밀번호 변경" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "비밀번호 변경" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "실행결과" @@ -5049,7 +5068,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr "다ìŒì—ì„œ:" @@ -5114,72 +5133,76 @@ msgstr "ì§ì ‘ 메시지 보내기" msgid "To" msgstr "ì—게" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "사용 가능한 글ìž" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "게시글 보내기" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "ë하세요? %?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "아니오" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "ë‚´ìš©ì´ ì—†ìŠµë‹ˆë‹¤!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "ìƒì„±" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "ì´ ê²Œì‹œê¸€ì— ëŒ€í•´ 답장하기" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "답장하기" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "ê²Œì‹œê¸€ì´ ë“±ë¡ë˜ì—ˆìŠµë‹ˆë‹¤." diff --git a/locale/mk/LC_MESSAGES/statusnet.po b/locale/mk/LC_MESSAGES/statusnet.po index 452b135db..bd346776c 100644 --- a/locale/mk/LC_MESSAGES/statusnet.po +++ b/locale/mk/LC_MESSAGES/statusnet.po @@ -1,6 +1,7 @@ # Translation of StatusNet to Macedonian # # Author@translatewiki.net: Bjankuloski06 +# Author@translatewiki.net: Brest # -- # This file is distributed under the same license as the StatusNet package. # @@ -8,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:19+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:11:58+0000\n" "Language-Team: Macedonian\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: out-statusnet\n" @@ -60,22 +61,22 @@ msgstr "%s и пријателите, Ñтраница %d" #: lib/personalgroupnav.php:100 #, php-format msgid "%s and friends" -msgstr "%s и пријателите" +msgstr "%s и пријатели" #: actions/all.php:99 -#, fuzzy, php-format +#, php-format msgid "Feed for friends of %s (RSS 1.0)" -msgstr "Канал Ñо пријатели на %S" +msgstr "Канал Ñо пријатели на %s (RSS 1.0)" #: actions/all.php:107 -#, fuzzy, php-format +#, php-format msgid "Feed for friends of %s (RSS 2.0)" -msgstr "Канал Ñо пријатели на %S" +msgstr "Канал Ñо пријатели на %s (RSS 2.0)" #: actions/all.php:115 #, php-format msgid "Feed for friends of %s (Atom)" -msgstr "Емитување за пријатели на %S (Atom)" +msgstr "Канал за пријатели на %S (Atom)" #: actions/all.php:127 #, php-format @@ -106,7 +107,7 @@ msgstr "" #: actions/all.php:165 msgid "You and friends" -msgstr "Вие и пријателите" +msgstr "Вие и пријатели" #: actions/allrss.php:119 actions/apitimelinefriends.php:122 #: actions/apitimelinehome.php:122 @@ -119,9 +120,8 @@ msgstr "" #: actions/apiaccountupdateprofile.php:97 #: actions/apiaccountupdateprofilebackgroundimage.php:94 #: actions/apiaccountupdateprofilecolors.php:118 -#, fuzzy msgid "API method not found." -msgstr "Кодот за потврда не е пронајден." +msgstr "API методот не епронајден." #: actions/apiaccountupdatedeliverydevice.php:85 #: actions/apiaccountupdateprofile.php:89 @@ -144,9 +144,8 @@ msgid "" msgstr "" #: actions/apiaccountupdatedeliverydevice.php:132 -#, fuzzy msgid "Could not update user." -msgstr "КориÑникот не може да Ñе оÑвежи/" +msgstr "Ðе може да Ñе ажурира кориÑник." #: actions/apiaccountupdateprofile.php:112 #: actions/apiaccountupdateprofilebackgroundimage.php:194 @@ -158,9 +157,8 @@ msgid "User has no profile." msgstr "КориÑникот нема профил." #: actions/apiaccountupdateprofile.php:147 -#, fuzzy msgid "Could not save profile." -msgstr "Профилот не може да Ñе Ñними." +msgstr "Ðе може да Ñе зачува профил." #: actions/apiaccountupdateprofilebackgroundimage.php:108 #: actions/apiaccountupdateprofileimage.php:97 @@ -182,19 +180,18 @@ msgstr "" #: actions/apiaccountupdateprofilebackgroundimage.php:187 #: actions/apiaccountupdateprofilecolors.php:142 -#, fuzzy msgid "Could not update your design." -msgstr "КориÑникот не може да Ñе оÑвежи/" +msgstr "Ðе може да Ñе ажурира вашиот дизајн." #: actions/apiblockcreate.php:105 msgid "You cannot block yourself!" msgstr "Ðе можете да Ñе блокирате Ñамите ÑебеÑи!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -307,31 +304,31 @@ msgid "Could not find target user." msgstr "Ðе можев да го пронајдам целниот кориÑник." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Прекарот мора да има Ñамо мали букви и бројки и да нема празни меÑта." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Тој прекар е во употреба. Одберете друг." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Ðеправилен прекар." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." -msgstr "Домашната Ñтраница не е правилно URL." +msgstr "Главната Ñтраница не е валиден URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Целото име е предолго (макÑимум 255 знаци)" @@ -342,7 +339,7 @@ msgid "Description is too long (max %d chars)." msgstr "ОпиÑот е предолг (дозволено е највеќе %d знаци)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Локацијата е предолга (макÑимумот е 255 знаци)." @@ -385,43 +382,42 @@ msgid "You have been blocked from that group by the admin." msgstr "" #: actions/apigroupjoin.php:138 -#, fuzzy, php-format +#, php-format msgid "Could not join user %s to group %s." -msgstr "Ðе може да Ñе пренаÑочи кон Ñерверот: %s" +msgstr "Ðе може да Ñе придружи кориÑник %s на група %s." #: actions/apigroupleave.php:114 -#, fuzzy msgid "You are not a member of this group." -msgstr "Ðе ни го иÑпративте тој профил." +msgstr "Ðе Ñте член на оваа група" #: actions/apigroupleave.php:124 -#, fuzzy, php-format +#, php-format msgid "Could not remove user %s to group %s." -msgstr "OpenID формуларот не може да Ñе креира:%s" +msgstr "Ðе може да Ñе избрише кориÑник %s од група %s." #: actions/apigrouplist.php:95 -#, fuzzy, php-format +#, php-format msgid "%s's groups" -msgstr "Профил" +msgstr "%s групи" #: actions/apigrouplist.php:103 -#, fuzzy, php-format +#, php-format msgid "Groups %s is a member of on %s." -msgstr "Ðе ни го иÑпративте тој профил." +msgstr "Групите %s Ñе членови на %s." #: actions/apigrouplistall.php:90 actions/usergroups.php:62 #, php-format msgid "%s groups" -msgstr "" +msgstr "%s групи" #: actions/apigrouplistall.php:94 #, php-format msgid "groups on %s" -msgstr "" +msgstr "групи на %s" #: actions/apistatusesdestroy.php:107 msgid "This method requires a POST or DELETE." -msgstr "" +msgstr "Методот бара POST или DELETE." #: actions/apistatusesdestroy.php:130 msgid "You may not delete another user's status." @@ -433,9 +429,8 @@ msgid "No such notice." msgstr "Ðема такво извеÑтување." #: actions/apistatusesretweet.php:83 -#, fuzzy msgid "Cannot repeat your own notice." -msgstr "Ðе може да Ñе региÑтрирате ако не ја прифаќате лиценцата." +msgstr "Ðе можете да ја повторувате ÑопÑтвената белешка." #: actions/apistatusesretweet.php:91 #, fuzzy @@ -443,9 +438,8 @@ msgid "Already repeated that notice." msgstr "Веќе Ñте пријавени!" #: actions/apistatusesshow.php:138 -#, fuzzy msgid "Status deleted." -msgstr "Ðватарот е ажуриран." +msgstr "СтатуÑот е избришан." #: actions/apistatusesshow.php:144 msgid "No status with that ID found." @@ -453,23 +447,22 @@ msgstr "" #: actions/apistatusesupdate.php:157 actions/newnotice.php:155 #: scripts/maildaemon.php:71 -#, fuzzy, php-format +#, php-format msgid "That's too long. Max notice size is %d chars." -msgstr "Ова е предолго. МакÑималната должина е 140 знаци." +msgstr "Ова е предолго. МакÑималната дозволена должина изнеÑува %d знаци." #: actions/apistatusesupdate.php:198 msgid "Not found" msgstr "" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" #: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261 -#, fuzzy msgid "Unsupported format." -msgstr "Ðеподдржан фомрат на Ñлики." +msgstr "Ðеподдржан формат." #: actions/apitimelinefavorites.php:108 #, php-format @@ -494,9 +487,9 @@ msgid "Updates from %1$s on %2$s!" msgstr "" #: actions/apitimelinementions.php:117 -#, fuzzy, php-format +#, php-format msgid "%1$s / Updates mentioning %2$s" -msgstr "%1$s ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° %2$s" +msgstr "%1$s / Подновувања кои Ñпоменуваат %2$s" #: actions/apitimelinementions.php:127 #, php-format @@ -534,19 +527,17 @@ msgid "Notices tagged with %s" msgstr "" #: actions/apitimelinetag.php:108 actions/tagrss.php:64 -#, fuzzy, php-format +#, php-format msgid "Updates tagged with %1$s on %2$s!" -msgstr "Микроблог на %s" +msgstr "Подновувањата Ñе означени Ñо %1$s на %2$s!" #: actions/apiusershow.php:96 -#, fuzzy msgid "Not found." -msgstr "Ðе е пронаједено барање." +msgstr "Ðе е пронајдено." #: actions/attachment.php:73 -#, fuzzy msgid "No such attachment." -msgstr "Ðема таков документ." +msgstr "Ðема таков прилог." #: actions/avatarbynickname.php:59 actions/grouprss.php:91 #: actions/leavegroup.php:76 @@ -579,9 +570,8 @@ msgstr "" #: actions/avatarsettings.php:119 actions/avatarsettings.php:197 #: actions/grouplogo.php:251 -#, fuzzy msgid "Avatar settings" -msgstr "ПоÑтавки" +msgstr "Ðагодувања на аватарот" #: actions/avatarsettings.php:127 actions/avatarsettings.php:205 #: actions/grouplogo.php:199 actions/grouplogo.php:259 @@ -591,12 +581,12 @@ msgstr "" #: actions/avatarsettings.php:142 actions/avatarsettings.php:217 #: actions/grouplogo.php:210 actions/grouplogo.php:271 msgid "Preview" -msgstr "" +msgstr "Преглед" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" -msgstr "" +msgstr "Бриши" #: actions/avatarsettings.php:166 actions/grouplogo.php:233 msgid "Upload" @@ -604,16 +594,16 @@ msgstr "Товари" #: actions/avatarsettings.php:231 actions/grouplogo.php:286 msgid "Crop" -msgstr "" +msgstr "ОтÑечи" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -627,7 +617,7 @@ msgstr "" #: actions/imsettings.php:220 actions/recoverpassword.php:44 #: actions/smssettings.php:248 lib/designsettings.php:304 msgid "Unexpected form submission." -msgstr "Ðеочекувано иÑпраќање на формулар." +msgstr "Ðеочекувано поднеÑување на образец." #: actions/avatarsettings.php:328 msgid "Pick a square area of the image to be your avatar" @@ -646,14 +636,12 @@ msgid "Failed updating avatar." msgstr "Товарањето на аватарот не уÑпеа." #: actions/avatarsettings.php:393 -#, fuzzy msgid "Avatar deleted." -msgstr "Ðватарот е ажуриран." +msgstr "Ðватарот е избришан." #: actions/block.php:69 -#, fuzzy msgid "You already blocked that user." -msgstr "Веќе Ñте пријавени!" +msgstr "Веќе го имате блокирано тој кориÑник." #: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160 #, fuzzy @@ -688,7 +676,7 @@ msgstr "" msgid "Block this user" msgstr "Ðема таков кориÑник." -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -703,37 +691,34 @@ msgstr "Ðема прекар" #: actions/groupbyid.php:83 actions/groupdesignsettings.php:97 #: actions/grouplogo.php:99 actions/groupmembers.php:83 #: actions/joingroup.php:83 actions/showgroup.php:137 -#, fuzzy msgid "No such group" -msgstr "Ðема такво извеÑтување." +msgstr "Ðема такваа група" #: actions/blockedfromgroup.php:90 -#, fuzzy, php-format +#, php-format msgid "%s blocked profiles" -msgstr "КориÑникот нема профил." +msgstr "%s блокирани профили" #: actions/blockedfromgroup.php:93 -#, fuzzy, php-format +#, php-format msgid "%s blocked profiles, page %d" -msgstr "%s и пријателите" +msgstr "%s блокирани профили, Ñтраница %d" #: actions/blockedfromgroup.php:108 msgid "A list of the users blocked from joining this group." msgstr "" #: actions/blockedfromgroup.php:281 -#, fuzzy msgid "Unblock user from group" -msgstr "Ðема таков кориÑник." +msgstr "Одблокирај кориÑник од група" #: actions/blockedfromgroup.php:313 lib/unblockform.php:69 msgid "Unblock" -msgstr "" +msgstr "Одблокирај" #: actions/blockedfromgroup.php:313 lib/unblockform.php:80 -#, fuzzy msgid "Unblock this user" -msgstr "Ðема таков кориÑник." +msgstr "Одблокирај го овој корÑник" #: actions/bookmarklet.php:50 msgid "Post to " @@ -763,7 +748,7 @@ msgstr "Оваа адреÑа веќе е потврдена." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "КориÑникот не може да Ñе оÑвежи/" @@ -771,7 +756,7 @@ msgstr "КориÑникот не може да Ñе оÑвежи/" #: actions/confirmaddress.php:126 actions/emailsettings.php:391 #: actions/imsettings.php:363 actions/smssettings.php:382 msgid "Couldn't delete email confirmation." -msgstr "Ðе може да Ñе креира потврда за е-пошта." +msgstr "Ðе можев да ја избришам потврдата по е-пошта." #: actions/confirmaddress.php:144 msgid "Confirm Address" @@ -783,9 +768,8 @@ msgid "The address \"%s\" has been confirmed for your account." msgstr "ÐдреÑата \"%s\" е потврдена за Вашата Ñметка." #: actions/conversation.php:99 -#, fuzzy msgid "Conversation" -msgstr "Локација" +msgstr "Конверзација" #: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87 #: lib/profileaction.php:216 lib/searchgroupnav.php:82 @@ -804,7 +788,7 @@ msgstr "Ðе Ñте пријавени." #: actions/deletenotice.php:71 msgid "Can't delete this notice." -msgstr "" +msgstr "Ðе може да Ñе избрише оваа забелешка." #: actions/deletenotice.php:103 msgid "" @@ -814,38 +798,35 @@ msgstr "" #: actions/deletenotice.php:109 actions/deletenotice.php:141 msgid "Delete notice" -msgstr "" +msgstr "Бриши забелешка" #: actions/deletenotice.php:144 msgid "Are you sure you want to delete this notice?" msgstr "" #: actions/deletenotice.php:145 -#, fuzzy msgid "Do not delete this notice" -msgstr "Ðема такво извеÑтување." +msgstr "Ðе ја бриши оваа забелешка" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" -msgstr "" +msgstr "Бриши ја оваа забелешка" #: actions/deletenotice.php:157 msgid "There was a problem with your session token. Try again, please." msgstr "" #: actions/deleteuser.php:67 -#, fuzzy msgid "You cannot delete users." -msgstr "КориÑникот не може да Ñе оÑвежи/" +msgstr "Ðе можете да бришете кориÑници." #: actions/deleteuser.php:74 -#, fuzzy msgid "You can only delete local users." -msgstr "Може да ја кориÑтите локалната претплата." +msgstr "Може да бришете Ñамо локални кориÑници." #: actions/deleteuser.php:110 actions/deleteuser.php:133 msgid "Delete user" -msgstr "" +msgstr "Бриши кориÑник" #: actions/deleteuser.php:135 msgid "" @@ -854,68 +835,64 @@ msgid "" msgstr "" #: actions/deleteuser.php:148 lib/deleteuserform.php:77 -#, fuzzy msgid "Delete this user" -msgstr "Ðема таков кориÑник." +msgstr "Избриши овој кориÑник" #: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124 #: lib/adminpanelaction.php:302 lib/groupnav.php:119 msgid "Design" -msgstr "" +msgstr "Дизајн" #: actions/designadminpanel.php:73 msgid "Design settings for this StatusNet site." -msgstr "" +msgstr "Ðагодувања на дизајн на ова StatusNet меÑто." #: actions/designadminpanel.php:275 -#, fuzzy msgid "Invalid logo URL." -msgstr "Погрешна големина." +msgstr "Погрешен URL на лого." #: actions/designadminpanel.php:279 -#, fuzzy, php-format +#, php-format msgid "Theme not available: %s" -msgstr "Оваа Ñтраница не е доÑтапна во форматот кој Вие го прифаќате." +msgstr "ÐепоÑточка тема: %s" #: actions/designadminpanel.php:375 -#, fuzzy msgid "Change logo" -msgstr "Промени ја лозинката" +msgstr "Промени лого" #: actions/designadminpanel.php:380 -#, fuzzy msgid "Site logo" -msgstr "Ðово извеÑтување" +msgstr "Лого знак на Ñајт" #: actions/designadminpanel.php:387 -#, fuzzy msgid "Change theme" -msgstr "Промени" +msgstr "Промени тема" #: actions/designadminpanel.php:404 -#, fuzzy msgid "Site theme" -msgstr "Ðово извеÑтување" +msgstr "Тема на Ñајт" #: actions/designadminpanel.php:405 msgid "Theme for the site." -msgstr "" +msgstr "Тема на Ñајтот." #: actions/designadminpanel.php:417 lib/designsettings.php:101 msgid "Change background image" -msgstr "" +msgstr "Промена на Ñлика на позадина" #: actions/designadminpanel.php:422 actions/designadminpanel.php:497 #: lib/designsettings.php:178 msgid "Background" -msgstr "" +msgstr "Позадина" #: actions/designadminpanel.php:427 -#, fuzzy, php-format +#, php-format msgid "" "You can upload a background image for the site. The maximum file size is %1" "$s." -msgstr "Ова е предолго. МакÑималната должина е 140 знаци." +msgstr "" +"Може да подигнете Ñлика за позадина за ова меÑто. МакÑималната големина на " +"податотеката е %1$s." #: actions/designadminpanel.php:457 lib/designsettings.php:139 msgid "On" @@ -934,28 +911,24 @@ msgid "Tile background image" msgstr "" #: actions/designadminpanel.php:488 lib/designsettings.php:170 -#, fuzzy msgid "Change colours" -msgstr "Промени ја лозинката" +msgstr "Промена на бои" #: actions/designadminpanel.php:510 lib/designsettings.php:191 -#, fuzzy msgid "Content" -msgstr "Поврзи Ñе" +msgstr "Содржина" #: actions/designadminpanel.php:523 lib/designsettings.php:204 -#, fuzzy msgid "Sidebar" -msgstr "Барај" +msgstr "Странична лента" #: actions/designadminpanel.php:536 lib/designsettings.php:217 msgid "Text" -msgstr "" +msgstr "ТекÑÑ‚" #: actions/designadminpanel.php:549 lib/designsettings.php:230 -#, fuzzy msgid "Links" -msgstr "Пријави Ñе" +msgstr "Ð’Ñ€Ñки" #: actions/designadminpanel.php:577 lib/designsettings.php:247 msgid "Use defaults" @@ -971,7 +944,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -981,7 +954,7 @@ msgstr "Сними" #: actions/designadminpanel.php:587 lib/designsettings.php:257 msgid "Save design" -msgstr "" +msgstr "Зачувај дизајн" #: actions/disfavor.php:81 msgid "This notice is not a favorite!" @@ -1024,14 +997,12 @@ msgid "Could not update group." msgstr "КориÑникот не може да Ñе оÑвежи/" #: actions/editgroup.php:259 classes/User_group.php:390 -#, fuzzy msgid "Could not create aliases." -msgstr "Информациите за аватарот не може да Ñе Ñнимат" +msgstr "Ðе можеше да Ñе Ñоздадат алијаÑи." #: actions/editgroup.php:269 -#, fuzzy msgid "Options saved." -msgstr "ПоÑтавките Ñе Ñнимени." +msgstr "Ðагодувањата Ñе зачувани." #: actions/emailsettings.php:60 msgid "Email Settings" @@ -1216,9 +1187,8 @@ msgstr "" #: actions/favorited.php:65 lib/popularnoticesection.php:88 #: lib/publicgroupnav.php:93 -#, fuzzy msgid "Popular notices" -msgstr "Ðема такво извеÑтување." +msgstr "Популарни забелешки" #: actions/favorited.php:67 #, fuzzy, php-format @@ -1278,19 +1248,16 @@ msgid "No notice ID." msgstr "Ðово извеÑтување" #: actions/file.php:38 -#, fuzzy msgid "No notice." -msgstr "Ðово извеÑтување" +msgstr "Ðема забелешка." #: actions/file.php:42 -#, fuzzy msgid "No attachments." -msgstr "Ðема таков документ." +msgstr "Ðема прикачувања." #: actions/file.php:51 -#, fuzzy msgid "No uploaded attachments." -msgstr "Ðема таков документ." +msgstr "Ðема подигнато прикачувања." #: actions/finishremotesubscribe.php:69 msgid "Not expecting this response!" @@ -1310,9 +1277,8 @@ msgid "That user has blocked you from subscribing." msgstr "" #: actions/finishremotesubscribe.php:110 -#, fuzzy msgid "You are not authorized." -msgstr "Ðе е одобрено." +msgstr "Ðе Ñте авторизирани." #: actions/finishremotesubscribe.php:113 #, fuzzy @@ -1435,9 +1401,8 @@ msgid "Unable to save your design settings!" msgstr "" #: actions/groupdesignsettings.php:308 actions/userdesignsettings.php:231 -#, fuzzy msgid "Design preferences saved." -msgstr "Преференциите Ñе Ñнимени." +msgstr "Ðагодувањата Ñе зачувани." #: actions/grouplogo.php:139 actions/grouplogo.php:192 msgid "Group logo" @@ -1454,9 +1419,8 @@ msgid "Pick a square area of the image to be the logo." msgstr "" #: actions/grouplogo.php:396 -#, fuzzy msgid "Logo updated." -msgstr "Ðватарот е ажуриран." +msgstr "Логото е подновено." #: actions/grouplogo.php:398 #, fuzzy @@ -1477,7 +1441,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1498,9 +1462,9 @@ msgid "Make this user an admin" msgstr "" #: actions/grouprss.php:133 -#, fuzzy, php-format +#, php-format msgid "Updates from members of %1$s on %2$s!" -msgstr "Микроблог на %s" +msgstr "Подновувања од членови на %1$s на %2$s!" #: actions/groups.php:62 lib/profileaction.php:210 lib/profileaction.php:230 #: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98 @@ -1569,10 +1533,9 @@ msgstr "" msgid "User is not blocked from group." msgstr "КориÑникот нема профил." -#: actions/groupunblock.php:128 actions/unblock.php:77 -#, fuzzy +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." -msgstr "Грешка во Ñнимањето на кориÑникот." +msgstr "Грешка при отÑтранување на блокот." #: actions/imsettings.php:59 msgid "IM Settings" @@ -1588,9 +1551,8 @@ msgstr "" "doc.im%%). Подолу " #: actions/imsettings.php:89 -#, fuzzy msgid "IM is not available." -msgstr "Оваа Ñтраница не е доÑтапна во форматот кој Вие го прифаќате." +msgstr "ИП не Ñе возможни." #: actions/imsettings.php:106 msgid "Current confirmed Jabber/GTalk address." @@ -1676,7 +1638,7 @@ msgstr "" #: actions/inbox.php:62 #, php-format msgid "Inbox for %s" -msgstr "" +msgstr "Приемно Ñандаче за %s" #: actions/inbox.php:115 msgid "This is your inbox, which lists your incoming private messages." @@ -1749,7 +1711,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "ИÑпрати" @@ -1822,9 +1784,9 @@ msgid "Could not find membership record." msgstr "" #: actions/leavegroup.php:127 lib/command.php:284 -#, fuzzy, php-format +#, php-format msgid "Could not remove user %s to group %s" -msgstr "OpenID формуларот не може да Ñе креира:%s" +msgstr "Ðе можев да го отÑтранам кориÑникот %s од групата %s" #: actions/leavegroup.php:134 lib/command.php:289 #, php-format @@ -1849,7 +1811,7 @@ msgstr "Ðеточно кориÑничко име или лозинка" msgid "Error setting user. You are probably not authorized." msgstr "Ðе е одобрено." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Пријави Ñе" @@ -1961,7 +1923,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1969,7 +1931,7 @@ msgstr "" msgid "New notice" msgstr "Ðово извеÑтување" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 #, fuzzy msgid "Notice posted" msgstr "ИзвеÑтувања" @@ -2061,9 +2023,8 @@ msgid "Notice Search" msgstr "" #: actions/othersettings.php:60 -#, fuzzy msgid "Other Settings" -msgstr "ПоÑтавки" +msgstr "Други нагодувања" #: actions/othersettings.php:71 msgid "Manage various other options." @@ -2082,9 +2043,8 @@ msgid "Automatic shortening service to use." msgstr "" #: actions/othersettings.php:122 -#, fuzzy msgid "View profile designs" -msgstr "ПоÑтавки на профилот" +msgstr "Види изгледи на профилот" #: actions/othersettings.php:123 msgid "Show or hide profile designs." @@ -2119,9 +2079,8 @@ msgid "Change your password." msgstr "Промени ја лозинката" #: actions/passwordsettings.php:96 actions/recoverpassword.php:231 -#, fuzzy msgid "Password change" -msgstr "Лозинката е Ñнимена." +msgstr "Промена на лозинка" #: actions/passwordsettings.php:104 msgid "Old password" @@ -2248,19 +2207,16 @@ msgid "Avatars" msgstr "Ðватар" #: actions/pathsadminpanel.php:257 -#, fuzzy msgid "Avatar server" -msgstr "ПоÑтавки" +msgstr "Сервер на аватарот" #: actions/pathsadminpanel.php:261 -#, fuzzy msgid "Avatar path" -msgstr "Ðватарот е ажуриран." +msgstr "Патека на аватарот" #: actions/pathsadminpanel.php:265 -#, fuzzy msgid "Avatar directory" -msgstr "Ðватарот е ажуриран." +msgstr "Директориум на аватарот" #: actions/pathsadminpanel.php:274 msgid "Backgrounds" @@ -2361,9 +2317,8 @@ msgstr "" "повеќе за ВаÑ." #: actions/profilesettings.php:99 -#, fuzzy msgid "Profile information" -msgstr "Ðепознат профил" +msgstr "Информации за профил" #: actions/profilesettings.php:108 lib/groupeditform.php:154 msgid "1-64 lowercase letters or numbers, no punctuation or spaces" @@ -2409,70 +2364,77 @@ msgstr "Локација" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Каде Ñе наоѓате, на пр. „Град, Држава“." -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" -msgstr "" +msgstr "Ознаки" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" -msgstr "" +msgstr "Јазик" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "Биографијата е предолга (макÑимумот е 140 знаци)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." -msgstr "" +msgstr "Ðе е избрана временÑка зона." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 -#, fuzzy, php-format +#: actions/profilesettings.php:253 actions/tagother.php:178 +#, php-format msgid "Invalid tag: \"%s\"" -msgstr "Ðевалидна домашна Ñтраница: '%s'" +msgstr "Ðевалидна ознака: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Ðе можев да ги зачувам нагодувањата за локација" + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Профилот не може да Ñе Ñними." -#: actions/profilesettings.php:336 -#, fuzzy +#: actions/profilesettings.php:374 msgid "Couldn't save tags." -msgstr "Профилот не може да Ñе Ñними." +msgstr "Ðе можев да ги зачувам ознаките." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ПоÑтавките Ñе Ñнимени." @@ -2569,7 +2531,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2710,7 +2672,7 @@ msgstr "Грешка Ñо кодот за потврдување." msgid "Registration successful" msgstr "" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "РегиÑтрирај Ñе" @@ -2887,7 +2849,7 @@ msgstr "Ðе може да Ñе региÑтрирате ако не ја при msgid "You already repeated that notice." msgstr "Веќе Ñте пријавени!" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Повторено" @@ -3017,9 +2979,8 @@ msgid "%s group, page %d" msgstr "" #: actions/showgroup.php:218 -#, fuzzy msgid "Group profile" -msgstr "Ðема такво извеÑтување." +msgstr "Профил на група" #: actions/showgroup.php:263 actions/tagother.php:118 #: actions/userauthorization.php:167 lib/userprofile.php:177 @@ -3028,9 +2989,8 @@ msgstr "" #: actions/showgroup.php:274 actions/tagother.php:128 #: actions/userauthorization.php:179 lib/userprofile.php:194 -#, fuzzy msgid "Note" -msgstr "ИзвеÑтувања" +msgstr "Забелешка" #: actions/showgroup.php:284 lib/groupeditform.php:184 msgid "Aliases" @@ -3122,12 +3082,11 @@ msgstr "" #: actions/showmessage.php:113 #, php-format msgid "Message from %1$s on %2$s" -msgstr "" +msgstr "Порака од %1$s на %2$s" #: actions/shownotice.php:90 -#, fuzzy msgid "Notice deleted." -msgstr "ИзвеÑтувања" +msgstr "Избришана забелешка" #: actions/showstream.php:73 #, php-format @@ -3200,9 +3159,9 @@ msgid "" msgstr "" #: actions/showstream.php:313 -#, fuzzy, php-format +#, php-format msgid "Repeat of %s" -msgstr "Одговори иÑпратени до %s" +msgstr "Повторувања на %s" #: actions/silence.php:65 actions/unsilence.php:65 msgid "You cannot silence users on this site." @@ -3256,9 +3215,8 @@ msgid "General" msgstr "" #: actions/siteadminpanel.php:256 -#, fuzzy msgid "Site name" -msgstr "Ðово извеÑтување" +msgstr "Име на Ñајт" #: actions/siteadminpanel.php:257 msgid "The name of your site, like \"Yourcompany Microblog\"" @@ -3286,13 +3244,12 @@ msgid "Contact email address for your site" msgstr "Ðема региÑтрирана адреÑа за е-пошта за тој кориÑник." #: actions/siteadminpanel.php:277 -#, fuzzy msgid "Local" -msgstr "Локација" +msgstr "Локално" #: actions/siteadminpanel.php:288 msgid "Default timezone" -msgstr "" +msgstr "ОÑновна временÑка зона" #: actions/siteadminpanel.php:289 msgid "Default timezone for the site; usually UTC." @@ -3300,16 +3257,15 @@ msgstr "" #: actions/siteadminpanel.php:295 msgid "Default site language" -msgstr "" +msgstr "ОÑновен јазик" #: actions/siteadminpanel.php:303 msgid "URLs" msgstr "" #: actions/siteadminpanel.php:306 -#, fuzzy msgid "Server" -msgstr "Пронајди" +msgstr "ОпÑлужувач" #: actions/siteadminpanel.php:306 msgid "Site's server hostname." @@ -3411,9 +3367,8 @@ msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" #: actions/siteadminpanel.php:388 actions/useradminpanel.php:313 -#, fuzzy msgid "Save site settings" -msgstr "ПоÑтавки" +msgstr "Зачувај нагодувања на веб-Ñтраницата" #: actions/smssettings.php:58 msgid "SMS Settings" @@ -3515,9 +3470,8 @@ msgid "You are not subscribed to that profile." msgstr "Ðе ни го иÑпративте тој профил." #: actions/subedit.php:83 -#, fuzzy msgid "Could not save subscription." -msgstr "Ðе може да Ñе креира претплатата" +msgstr "Ðе можев да ја зачувам претплатата." #: actions/subscribe.php:55 #, fuzzy @@ -3917,9 +3871,8 @@ msgid "No ID." msgstr "Ðема id." #: actions/userdesignsettings.php:76 lib/designsettings.php:65 -#, fuzzy msgid "Profile design" -msgstr "ПоÑтавки на профилот" +msgstr "Изглед на профилот" #: actions/userdesignsettings.php:87 lib/designsettings.php:76 msgid "" @@ -4009,16 +3962,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Проблем во Ñнимањето на извеÑтувањето." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Одговор од внеÑот во базата: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4034,9 +3987,8 @@ msgid "Could not create group." msgstr "Информациите за аватарот не може да Ñе Ñнимат" #: classes/User_group.php:409 -#, fuzzy msgid "Could not set group membership." -msgstr "Ðе може да Ñе креира претплатата" +msgstr "Ðе можев да назначам членÑтво во групата." #: lib/accountsettingsaction.php:108 msgid "Change your profile settings" @@ -4077,135 +4029,135 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Дома" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "За" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Поврзи Ñе" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Ðе може да Ñе пренаÑочи кон Ñерверот: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Претплати" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Одјави Ñе" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Создај Ñметка" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Помош" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "Помош" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Барај" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "Ðово извеÑтување" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "Ðово извеÑтување" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "Претплати" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "За" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "ЧПП" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "ПриватноÑÑ‚" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Изворен код" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Контакт" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4214,12 +4166,12 @@ msgstr "" "**%%site.name%%** е ÑÐµÑ€Ð²Ð¸Ñ Ð·Ð° микроблогирање што ви го овозможува [%%site." "broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** е ÑÐµÑ€Ð²Ð¸Ñ Ð·Ð° микроблогирање." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4230,34 +4182,32 @@ msgstr "" "верзија %s, доÑтапен пд [GNU Affero General Public License](http://www.fsf." "org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "Ðово извеÑтување" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 -#, fuzzy +#: lib/action.php:1108 msgid "After" -msgstr "« Следни" +msgstr "ПоÑле" -#: lib/action.php:1115 -#, fuzzy +#: lib/action.php:1116 msgid "Before" -msgstr "Предходни »" +msgstr "Пред" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4278,9 +4228,8 @@ msgid "Unable to delete design setting." msgstr "" #: lib/adminpanelaction.php:300 -#, fuzzy msgid "Basic site configuration" -msgstr "Потврдување на адреÑата" +msgstr "ОÑновни нагодувања на Ñајтот" #: lib/adminpanelaction.php:303 #, fuzzy @@ -4298,12 +4247,11 @@ msgstr "" #: lib/attachmentlist.php:265 msgid "Author" -msgstr "" +msgstr "Ðвтор" #: lib/attachmentlist.php:278 -#, fuzzy msgid "Provider" -msgstr "Профил" +msgstr "Обезбедувач" #: lib/attachmentnoticesection.php:67 msgid "Notices where this attachment appears" @@ -4313,6 +4261,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Промена на лозинка" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Промена на лозинка" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4474,9 +4432,9 @@ msgid "Login command is disabled" msgstr "" #: lib/command.php:664 -#, fuzzy, php-format +#, php-format msgid "Could not create login token for %s" -msgstr "OpenID формуларот не може да Ñе креира:%s" +msgstr "Ðе можам да Ñоздадам најавен жетон за" #: lib/command.php:669 #, php-format @@ -4998,7 +4956,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "" @@ -5063,73 +5021,75 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "6 или повеќе знаци" -#: lib/noticeform.php:158 -#, fuzzy +#: lib/noticeform.php:160 msgid "Send a notice" -msgstr "Ðово извеÑтување" +msgstr "ИÑпрати забелешка" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Што има %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" -msgstr "" +msgstr "Прикачи" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" +msgstr "Прикаќи податотека" + +#: lib/noticeform.php:212 +msgid "Share your location" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "Ðема Ñодржина!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Повторено од" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 -#, fuzzy +#: lib/noticelist.php:586 msgid "Reply" -msgstr "одговор" +msgstr "Одговор" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "ИзвеÑтувања" @@ -5216,9 +5176,8 @@ msgid "Subscribers" msgstr "Претплатници" #: lib/profileaction.php:157 -#, fuzzy msgid "All subscribers" -msgstr "Претплатници" +msgstr "Сите претплатници" #: lib/profileaction.php:178 msgid "User ID" @@ -5230,7 +5189,7 @@ msgstr "Член од" #: lib/profileaction.php:245 msgid "All groups" -msgstr "" +msgstr "Сите групи" #: lib/profileformaction.php:123 #, fuzzy @@ -5288,7 +5247,7 @@ msgstr "Барај" #: lib/searchaction.php:126 msgid "Keyword(s)" -msgstr "" +msgstr "Клучен збор" #: lib/searchaction.php:162 #, fuzzy @@ -5317,17 +5276,15 @@ msgstr "" #: lib/section.php:106 msgid "More..." -msgstr "" +msgstr "Повеќе..." #: lib/silenceform.php:67 -#, fuzzy msgid "Silence" -msgstr "Ðово извеÑтување" +msgstr "Молк" #: lib/silenceform.php:78 -#, fuzzy msgid "Silence this user" -msgstr "Ðема таков кориÑник." +msgstr "Замолчи го овој кориÑник" #: lib/subgroupnav.php:83 #, fuzzy, php-format @@ -5433,13 +5390,12 @@ msgid "User actions" msgstr "" #: lib/userprofile.php:248 -#, fuzzy msgid "Edit profile settings" -msgstr "ПоÑтавки на профилот" +msgstr "Уреди нагодувања на профилот" #: lib/userprofile.php:249 msgid "Edit" -msgstr "" +msgstr "Уреди" #: lib/userprofile.php:272 msgid "Send a direct message to this user" @@ -5447,7 +5403,7 @@ msgstr "" #: lib/userprofile.php:273 msgid "Message" -msgstr "" +msgstr "Порака" #: lib/userprofile.php:311 msgid "Moderate" diff --git a/locale/nb/LC_MESSAGES/statusnet.po b/locale/nb/LC_MESSAGES/statusnet.po index ab0dd4b3a..efb2320b6 100644 --- a/locale/nb/LC_MESSAGES/statusnet.po +++ b/locale/nb/LC_MESSAGES/statusnet.po @@ -8,12 +8,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:22+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:02+0000\n" "Language-Team: Norwegian (bokmÃ¥l)‬\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: no\n" "X-Message-Group: out-statusnet\n" @@ -199,11 +199,11 @@ msgstr "Klarte ikke Ã¥ oppdatere bruker." msgid "You cannot block yourself!" msgstr "Du kan ikke blokkere deg selv!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Blokkering av bruker mislyktes." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Oppheving av blokkering av bruker mislyktes." @@ -317,31 +317,31 @@ msgid "Could not find target user." msgstr "Klarte ikke Ã¥ oppdatere bruker." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Kallenavn kan kun ha smÃ¥ bokstaver og tall og ingen mellomrom." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Det nicket er allerede i bruk. Prøv et annet." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Ugyldig nick." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Hjemmesiden er ikke en gyldig URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Beklager, navnet er for langt (max 250 tegn)." @@ -352,7 +352,7 @@ msgid "Description is too long (max %d chars)." msgstr "Beskrivelsen er for lang (maks %d tegn)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "" @@ -471,7 +471,7 @@ msgstr "" msgid "Not found" msgstr "" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -602,7 +602,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 #, fuzzy msgid "Delete" msgstr "slett" @@ -616,13 +616,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -695,7 +695,7 @@ msgstr "Ja" msgid "Block this user" msgstr "" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -769,7 +769,7 @@ msgstr "" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Klarte ikke Ã¥ oppdatere bruker." @@ -831,7 +831,7 @@ msgstr "Er du sikker pÃ¥ at du vil slette denne notisen?" msgid "Do not delete this notice" msgstr "Kan ikke slette notisen." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "" @@ -975,7 +975,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1472,7 +1472,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "En liste over brukerne i denne gruppen." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Administrator" @@ -1561,7 +1561,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "" @@ -1734,7 +1734,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Send" @@ -1853,7 +1853,7 @@ msgstr "Feil brukernavn eller passord" msgid "Error setting user. You are probably not authorized." msgstr "Ikke autorisert." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Logg inn" @@ -1961,7 +1961,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1969,7 +1969,7 @@ msgstr "" msgid "New notice" msgstr "" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "" @@ -2396,71 +2396,80 @@ msgstr "" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Tagger" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "SprÃ¥k" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Tidssone" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Abonner automatisk pÃ¥ de som abonnerer pÃ¥ meg (best for ikke-mennesker)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "«Om meg» er for lang (maks 140 tegn)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "Ugyldig hjemmeside '%s'" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Klarte ikke Ã¥ lagre profil." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Klarte ikke Ã¥ lagre profil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "Klarte ikke Ã¥ lagre profil." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "" @@ -2554,7 +2563,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2692,7 +2701,7 @@ msgstr "" msgid "Registration successful" msgstr "" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "" @@ -2878,7 +2887,7 @@ msgstr "" msgid "You already repeated that notice." msgstr "Du er allerede logget inn!" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Opprett" @@ -3978,16 +3987,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4045,131 +4054,131 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Hjem" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "Om" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Koble til" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Logg ut" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "Opprett en ny konto" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Hjelp" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "Hjelp" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Søk" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Om" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "OSS/FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Kilde" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Kontakt" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4178,12 +4187,12 @@ msgstr "" "**%%site.name%%** er en mikrobloggingtjeneste av [%%site.broughtby%%](%%site." "broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** er en mikrobloggingtjeneste. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4191,32 +4200,32 @@ msgid "" "org/licensing/licenses/agpl-3.0.html)." msgstr "" -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "Tidligere »" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4269,6 +4278,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Passordet ble lagret" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Passordet ble lagret" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4952,7 +4971,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr "fra" @@ -5017,72 +5036,76 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "6 eller flere tegn" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Opprett" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 #, fuzzy msgid "Reply" msgstr "svar" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Nytt nick" diff --git a/locale/nl/LC_MESSAGES/statusnet.po b/locale/nl/LC_MESSAGES/statusnet.po index 7bc63e9e0..378b88a23 100644 --- a/locale/nl/LC_MESSAGES/statusnet.po +++ b/locale/nl/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:30+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:13+0000\n" "Language-Team: Dutch\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: out-statusnet\n" @@ -200,11 +200,11 @@ msgstr "Het was niet mogelijk uw ontwerp bij te werken." msgid "You cannot block yourself!" msgstr "U kunt zichzelf niet blokkeren!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Het blokkeren van de gebruiker is mislukt." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Het deblokkeren van de gebruiker is mislukt." @@ -321,7 +321,7 @@ msgid "Could not find target user." msgstr "Het was niet mogelijk de doelgebruiker te vinden." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -329,26 +329,26 @@ msgstr "" "geen spaties bevatten." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "" "De opgegeven gebruikersnaam is al in gebruik. Kies een andere gebruikersnaam." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Geen geldige gebruikersnaam." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "De thuispagina is geen geldige URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "De volledige naam is te lang (maximaal 255 tekens)." @@ -359,7 +359,7 @@ msgid "Description is too long (max %d chars)." msgstr "De beschrijving is te lang. Gebruik maximaal %d tekens." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Locatie is te lang (maximaal 255 tekens)." @@ -474,7 +474,7 @@ msgstr "Dat is te lang. De maximale mededelingslengte is 140 tekens." msgid "Not found" msgstr "Niet gevonden" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -606,7 +606,7 @@ msgid "Preview" msgstr "Voorvertoning" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Verwijderen" @@ -619,13 +619,13 @@ msgid "Crop" msgstr "Uitsnijden" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -701,7 +701,7 @@ msgstr "Ja" msgid "Block this user" msgstr "Deze gebruiker blokkeren" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Het was niet mogelijk om de blokkadeinformatie op te slaan." @@ -773,7 +773,7 @@ msgstr "Dit adres is al bevestigd." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Kon gebruiker niet actualiseren." @@ -835,7 +835,7 @@ msgstr "Weet u zeker dat u deze aankondiging wilt verwijderen?" msgid "Do not delete this notice" msgstr "Deze mededeling niet verwijderen" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Deze mededeling verwijderen" @@ -975,7 +975,7 @@ msgstr "Standaardinstellingen toepassen" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1484,7 +1484,7 @@ msgstr "% groeps leden, pagina %d" msgid "A list of the users in this group." msgstr "Ledenlijst van deze groep" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Beheerder" @@ -1584,7 +1584,7 @@ msgstr "Alleen beheerders kunnen groepsleden deblokkeren." msgid "User is not blocked from group." msgstr "De gebruiker is niet de toegang tot de groep ontzegd." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Er is een fout opgetreden bij het verwijderen van de blokkade." @@ -1772,7 +1772,7 @@ msgstr "Persoonlijk bericht" msgid "Optionally add a personal message to the invitation." msgstr "Persoonlijk bericht bij de uitnodiging (optioneel)." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Verzenden" @@ -1896,7 +1896,7 @@ msgstr "" "Er is een fout opgetreden bij het maken van de instellingen. U hebt " "waarschijnlijk niet de juiste rechten." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Aanmelden" @@ -2007,7 +2007,7 @@ msgstr "Bericht verzonden." msgid "Direct message to %s sent" msgstr "Het directe bericht aan %s is verzonden" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Er is een Ajax-fout opgetreden" @@ -2015,7 +2015,7 @@ msgstr "Er is een Ajax-fout opgetreden" msgid "New notice" msgstr "Nieuw bericht" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "De mededeling is verzonden" @@ -2448,75 +2448,83 @@ msgstr "Locatie" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Waar u bent, bijvoorbeeld \"woonplaats, land\" of \"postcode, land\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "Mijn huidige locatie weergeven bij het plaatsen van mededelingen" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Labels" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Eigen labels (letter, getallen, -, ., en _). Gescheiden door komma's of " "spaties" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Taal" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Voorkeurstaal" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Tijdzone" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "In welke tijdzone verblijft u meestal?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Automatisch abonneren bij abonnement op mij (beste voor automatische " "processen)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "De beschrijving is te lang (maximaal %d tekens)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Er is geen tijdzone geselecteerd." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Taal is te lang (max 50 tekens)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Ongeldig label: '%s'" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" "Het was niet mogelijk de instelling voor automatisch abonneren voor de " "gebruiker bij te werken." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Het was niet mogelijk de locatievoorkeuren op te slaan." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Het profiel kon niet opgeslagen worden." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Het was niet mogelijk de labels op te slaan." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "De instellingen zijn opgeslagen." @@ -2623,7 +2631,7 @@ msgstr "" "U kunt een [gebruiker registeren](%%action.register%%) en dan de eerste zijn " "die er een plaatst!" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Woordwolk" @@ -2768,7 +2776,7 @@ msgstr "Sorry. De uitnodigingscode is ongeldig." msgid "Registration successful" msgstr "De registratie is voltooid" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registreren" @@ -2959,7 +2967,7 @@ msgstr "U kunt uw eigen mededeling niet herhalen." msgid "You already repeated that notice." msgstr "U hent die mededeling al herhaald." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Herhaald" @@ -3576,15 +3584,15 @@ msgstr "U hebt dit al ingesteld als uw telefoonnummer." #: actions/smssettings.php:321 msgid "That phone number already belongs to another user." -msgstr "Dit telefoonnummer is al in gebruik bij een andere gebruiker." +msgstr "Dit telefoonnummer is al geregistrerd door een andere gebruiker." #: actions/smssettings.php:347 msgid "" "A confirmation code was sent to the phone number you added. Check your phone " "for the code and instructions on how to use it." msgstr "" -"Er is een bevestigingscode is verzonden naar het telefoonnummer dat u hebt " -"toegevoegd. Controleer uw telefoon voor de code en instructies." +"Er is een bevestigingscode verzonden naar het telefoonnummer dat u hebt " +"toegevoegd. Op uw telefoon vindt u de code en de instructies." #: actions/smssettings.php:374 msgid "That is the wrong confirmation number." @@ -4126,17 +4134,17 @@ msgid "You are banned from posting notices on this site." msgstr "" "U bent geblokkeerd en mag geen mededelingen meer achterlaten op deze site." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Er is een probleem opgetreden bij het opslaan van de mededeling." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" "Er is een databasefout opgetreden bij het invoegen van het antwoord: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4191,128 +4199,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Naamloze pagina" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Primaire sitenavigatie" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Start" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Persoonlijk profiel en tijdlijn van vrienden" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Gebruiker" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Uw e-mailadres, avatar, wachtwoord of profiel wijzigen" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Koppelen" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Met diensten verbinden" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Websiteinstellingen wijzigen" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Uitnodigen" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Vrienden en collega's uitnodigen om u te vergezellen op %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Afmelden" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Van de site afmelden" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Gebruiker aanmaken" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Bij de site aanmelden" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Help" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Help me!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Zoeken" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Naar gebruikers of tekst zoeken" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Mededeling van de website" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Lokale weergaven" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Mededeling van de pagina" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Secundaire sitenavigatie" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Over" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "Veel gestelde vragen" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "Gebruiksvoorwaarden" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privacy" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Broncode" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contact" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Widget" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Licentie van de StatusNet-software" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4321,12 +4329,12 @@ msgstr "" "**%%site.name%%** is een microblogdienst van [%%site.broughtby%%](%%site." "broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** is een microblogdienst. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4337,31 +4345,31 @@ msgstr "" "versie %s, beschikbaar onder de [GNU Affero General Public License](http://" "www.fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Licentie voor siteinhoud" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Alle " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "licentie." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginering" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Later" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Eerder" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Er is een probleem met uw sessietoken." @@ -4413,6 +4421,16 @@ msgstr "Mededelingen die deze bijlage bevatten" msgid "Tags for this attachment" msgstr "Labels voor deze bijlage" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Wachtwoord wijzigen" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Wachtwoord wijzigen" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Commandoresultaten" @@ -5216,7 +5234,7 @@ msgstr "" "U hebt geen privéberichten. U kunt privéberichten verzenden aan andere " "gebruikers. Mensen kunnen u privéberichten sturen die alleen u kunt lezen." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "van" @@ -5286,69 +5304,73 @@ msgstr "Directe mededeling verzenden" msgid "To" msgstr "Aan" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Beschikbare tekens" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Mededeling verzenden" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Hallo, %s." -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "Toevoegen" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Bestand toevoegen" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "Uw locatie bekend maken" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "N" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "Z" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "O" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "W" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "op" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "in context" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Herhaald door" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Op deze mededeling antwoorden" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Antwoorden" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Mededeling herhaald" @@ -5479,9 +5501,8 @@ msgid "Popular" msgstr "Populair" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Deze mededeling herhalen" +msgstr "Deze mededeling herhalen?" #: lib/repeatform.php:132 msgid "Repeat this notice" diff --git a/locale/nn/LC_MESSAGES/statusnet.po b/locale/nn/LC_MESSAGES/statusnet.po index 51576fda4..66a393e7b 100644 --- a/locale/nn/LC_MESSAGES/statusnet.po +++ b/locale/nn/LC_MESSAGES/statusnet.po @@ -7,12 +7,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:26+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:07+0000\n" "Language-Team: Norwegian Nynorsk\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nn\n" "X-Message-Group: out-statusnet\n" @@ -193,11 +193,11 @@ msgstr "Kan ikkje oppdatera brukar." msgid "You cannot block yourself!" msgstr "Kan ikkje oppdatera brukar." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Blokkering av brukar feila." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "De-blokkering av brukar feila." @@ -314,31 +314,31 @@ msgid "Could not find target user." msgstr "Kan ikkje finna einkvan status." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Kallenamn mÃ¥ berre ha smÃ¥ bokstavar og nummer, ingen mellomrom." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Kallenamnet er allereie i bruk. Prøv eit anna." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Ikkje eit gyldig brukarnamn." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Heimesida er ikkje ei gyldig internettadresse." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Ditt fulle namn er for langt (maksimalt 255 teikn)." @@ -349,7 +349,7 @@ msgid "Description is too long (max %d chars)." msgstr "skildringa er for lang (maks 140 teikn)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Plassering er for lang (maksimalt 255 teikn)." @@ -470,7 +470,7 @@ msgstr "Det er for langt! Ein notis kan berre innehalde 140 teikn." msgid "Not found" msgstr "Fann ikkje" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -601,7 +601,7 @@ msgid "Preview" msgstr "Forhandsvis" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Slett" @@ -614,13 +614,13 @@ msgid "Crop" msgstr "Skaler" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -693,7 +693,7 @@ msgstr "Jau" msgid "Block this user" msgstr "Blokkér denne brukaren" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Lagring av informasjon feila." @@ -768,7 +768,7 @@ msgstr "Den addressa har alt blitt bekrefta." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Kan ikkje oppdatera brukar." @@ -833,7 +833,7 @@ msgstr "Sikker pÃ¥ at du vil sletta notisen?" msgid "Do not delete this notice" msgstr "Kan ikkje sletta notisen." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Slett denne notisen" @@ -982,7 +982,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1493,7 +1493,7 @@ msgstr "%s medlemmar i gruppa, side %d" msgid "A list of the users in this group." msgstr "Ei liste over brukarane i denne gruppa." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Administrator" @@ -1586,7 +1586,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "Brukar har blokkert deg." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Feil ved fjerning av blokka." @@ -1769,7 +1769,7 @@ msgstr "Personleg melding" msgid "Optionally add a personal message to the invitation." msgstr "Eventuelt legg til ei personleg melding til invitasjonen." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Send" @@ -1888,7 +1888,7 @@ msgstr "Feil brukarnamn eller passord" msgid "Error setting user. You are probably not authorized." msgstr "Ikkje autorisert." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Logg inn" @@ -2003,7 +2003,7 @@ msgstr "Melding" msgid "Direct message to %s sent" msgstr "Direkte melding til %s sendt" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax feil" @@ -2011,7 +2011,7 @@ msgstr "Ajax feil" msgid "New notice" msgstr "Ny notis" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Melding lagra" @@ -2450,72 +2450,81 @@ msgstr "Plassering" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Kvar er du, t.d. «By, Fylke (eller Region), Land»" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Merkelappar" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "merkelappar for deg sjølv ( bokstavar, nummer, -, ., og _ ), komma eller " "mellomroms separert." -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "SprÃ¥k" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Foretrukke sprÃ¥k" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Tidssone" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Kva tidssone er du vanlegvis i?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Automatisk ting notisane til dei som tingar mine (best for ikkje-menneskje)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "«Om meg» er for lang (maks 140 " -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Tidssone er ikkje valt." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "SprÃ¥k er for langt (maksimalt 50 teikn)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Ugyldig merkelapp: %s" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Kan ikkje oppdatera brukar for automatisk tinging." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Kan ikkje lagra merkelapp." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Kan ikkje lagra profil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Kan ikkje lagra merkelapp." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Lagra innstillingar." @@ -2613,7 +2622,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Emne sky" @@ -2752,7 +2761,7 @@ msgstr "Feil med stadfestingskode." msgid "Registration successful" msgstr "Registreringa gikk bra" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registrér" @@ -2949,7 +2958,7 @@ msgstr "Du kan ikkje registrera deg om du ikkje godtek vilkÃ¥ra i lisensen." msgid "You already repeated that notice." msgstr "Du har allereie blokkert denne brukaren." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Lag" @@ -4088,16 +4097,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Du kan ikkje lengre legge inn notisar pÃ¥ denne sida." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Eit problem oppstod ved lagring av notis." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Databasefeil, kan ikkje lagra svar: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4153,131 +4162,131 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Ingen tittel" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Navigasjon for hovudsida" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Heim" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Personleg profil og oversyn over vener" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Konto" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Endra e-posten, avataren, passordet eller profilen" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Kopla til" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Klarte ikkje Ã¥ omdirigera til tenaren: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Navigasjon for hovudsida" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Invitér" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Inviter vennar og kollega til Ã¥ bli med deg pÃ¥ %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Logg ut" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Logg ut or sida" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Opprett ny konto" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Logg inn or sida" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Hjelp" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Hjelp meg!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Søk" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Søk etter folk eller innhald" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Statusmelding" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Lokale syningar" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Sidenotis" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "AndrenivÃ¥s side navigasjon" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Om" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "OSS" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Personvern" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Kjeldekode" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Kontakt" -#: lib/action.php:741 +#: lib/action.php:742 #, fuzzy msgid "Badge" msgstr "Dult" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "StatusNets programvarelisens" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4286,12 +4295,12 @@ msgstr "" "**%%site.name%%** er ei mikrobloggingteneste av [%%site.broughtby%%](%%site." "broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** er ei mikrobloggingteneste. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4302,32 +4311,32 @@ msgstr "" "%s, tilgjengeleg under [GNU Affero General Public License](http://www.fsf." "org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "StatusNets programvarelisens" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Alle" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "lisens." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginering" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "« Etter" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Før »" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Det var eit problem med sesjons billetten din." @@ -4387,6 +4396,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Endra passord" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Endra passord" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Resultat frÃ¥ kommandoen" @@ -5076,7 +5095,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr " frÃ¥ " @@ -5141,72 +5160,76 @@ msgstr "Send ei direkte melding" msgid "To" msgstr "Til" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Tilgjenglege teikn" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Send ei melding" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Kva skjer, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "Nei" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "Ingen innhald." -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Lag" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Svar pÃ¥ denne notisen" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Svar" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Melding lagra" diff --git a/locale/pl/LC_MESSAGES/statusnet.po b/locale/pl/LC_MESSAGES/statusnet.po index d2e3acb75..63fb0d9d7 100644 --- a/locale/pl/LC_MESSAGES/statusnet.po +++ b/locale/pl/LC_MESSAGES/statusnet.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:34+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:18+0000\n" "Last-Translator: Piotr DrÄ…g <piotrdrag@gmail.com>\n" "Language-Team: Polish <pl@li.org>\n" "MIME-Version: 1.0\n" @@ -19,7 +19,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pl\n" "X-Message-Group: out-statusnet\n" @@ -203,11 +203,11 @@ msgstr "Nie można zaktualizować wyglÄ…du." msgid "You cannot block yourself!" msgstr "Nie można zablokować siebie." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Zablokowanie użytkownika nie powiodÅ‚o siÄ™." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Odblokowanie użytkownika nie powiodÅ‚o siÄ™." @@ -322,31 +322,31 @@ msgid "Could not find target user." msgstr "Nie można odnaleźć użytkownika docelowego." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Pseudonim może zawierać tylko maÅ‚e litery i cyfry, bez spacji." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Pseudonim jest już używany. Spróbuj innego." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "To nie jest prawidÅ‚owy pseudonim." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Strona domowa nie jest prawidÅ‚owym adresem URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "ImiÄ™ i nazwisko jest za dÅ‚ugie (maksymalnie 255 znaków)." @@ -357,7 +357,7 @@ msgid "Description is too long (max %d chars)." msgstr "Opis jest za dÅ‚ugi (maksymalnie %d znaków)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "PoÅ‚ożenie jest za dÅ‚ugie (maksymalnie 255 znaków)." @@ -472,7 +472,7 @@ msgstr "Wpis jest za dÅ‚ugi. Maksymalna dÅ‚ugość wynosi %d znaków." msgid "Not found" msgstr "Nie odnaleziono" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "Maksymalny rozmiar wpisu wynosi %d znaków, w tym adres URL zaÅ‚Ä…cznika." @@ -601,7 +601,7 @@ msgid "Preview" msgstr "PodglÄ…d" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "UsuÅ„" @@ -614,13 +614,13 @@ msgid "Crop" msgstr "Przytnij" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -693,7 +693,7 @@ msgstr "Tak" msgid "Block this user" msgstr "Zablokuj tego użytkownika" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Zapisanie informacji o blokadzie nie powiodÅ‚o siÄ™." @@ -765,7 +765,7 @@ msgstr "Ten adres zostaÅ‚ już potwierdzony." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Nie można zaktualizować użytkownika." @@ -827,7 +827,7 @@ msgstr "JesteÅ› pewien, że chcesz usunąć ten wpis?" msgid "Do not delete this notice" msgstr "Nie usuwaj tego wpisu" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "UsuÅ„ ten wpis" @@ -963,7 +963,7 @@ msgstr "Przywróć domyÅ›lne ustawienia" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1268,9 +1268,9 @@ msgid "Featured users, page %d" msgstr "Znani użytkownicy, strona %d" #: actions/featured.php:99 -#, fuzzy, php-format +#, php-format msgid "A selection of some great users on %s" -msgstr "Wybór znanych użytkowników na %s" +msgstr "Wybór znanych użytkowników w serwisie %s" #: actions/file.php:34 msgid "No notice ID." @@ -1460,7 +1460,7 @@ msgstr "CzÅ‚onkowie grupy %s, strona %d" msgid "A list of the users in this group." msgstr "Lista użytkowników znajdujÄ…cych siÄ™ w tej grupie." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Administrator" @@ -1558,7 +1558,7 @@ msgstr "Tylko administrator może odblokowywać czÅ‚onków grupy." msgid "User is not blocked from group." msgstr "Użytkownik nie zostaÅ‚ zablokowany w grupie." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "BÅ‚Ä…d podczas usuwania blokady." @@ -1744,7 +1744,7 @@ msgstr "Osobista wiadomość" msgid "Optionally add a personal message to the invitation." msgstr "Opcjonalnie dodaj osobistÄ… wiadomość do zaproszenia." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "WyÅ›lij" @@ -1866,7 +1866,7 @@ msgstr "Niepoprawna nazwa użytkownika lub hasÅ‚o." msgid "Error setting user. You are probably not authorized." msgstr "BÅ‚Ä…d podczas ustawiania użytkownika. Prawdopodobnie brak upoważnienia." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Zaloguj siÄ™" @@ -1979,7 +1979,7 @@ msgstr "WysÅ‚ano wiadomość" msgid "Direct message to %s sent" msgstr "WysÅ‚ano bezpoÅ›redniÄ… wiadomość do użytkownika %s" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "BÅ‚Ä…d AJAX" @@ -1987,7 +1987,7 @@ msgstr "BÅ‚Ä…d AJAX" msgid "New notice" msgstr "Nowy wpis" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "WysÅ‚ano wpis" @@ -2418,72 +2418,80 @@ msgstr "PoÅ‚ożenie" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Gdzie jesteÅ›, np. \"miasto, województwo (lub region), kraj\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "Podziel siÄ™ swoim obecnym poÅ‚ożeniem podczas wysyÅ‚ania wpisów" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Znaczniki" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Znaczniki dla siebie (litery, liczby, -, . i _), oddzielone przecinkami lub " "spacjami" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "JÄ™zyk" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Preferowany jÄ™zyk" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Strefa czasowa" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "W jakiej strefie czasowej zwykle siÄ™ znajdujesz?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Automatycznie subskrybuj każdego, kto mnie subskrybuje (najlepsze dla botów)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Wpis \"O mnie\" jest za dÅ‚ugi (maksymalnie %d znaków)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Nie wybrano strefy czasowej." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "JÄ™zyk jest za dÅ‚ugi (maksymalnie 50 znaków)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "NieprawidÅ‚owy znacznik: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Nie można zaktualizować użytkownika do automatycznej subskrypcji." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Nie można zapisać preferencji poÅ‚ożenia." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Nie można zapisać profilu." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Nie można zapisać znaczników." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Zapisano ustawienia." @@ -2589,7 +2597,7 @@ msgstr "" "Dlaczego nie [zarejestrujesz konta](%%action.register%%) i zostaniesz " "pierwszym, który go wyÅ›le." -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Chmura znaczników" @@ -2729,7 +2737,7 @@ msgstr "NieprawidÅ‚owy kod zaproszenia." msgid "Registration successful" msgstr "Rejestracja powiodÅ‚a siÄ™" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Zarejestruj siÄ™" @@ -2921,7 +2929,7 @@ msgstr "Nie można powtórzyć wÅ‚asnego wpisu." msgid "You already repeated that notice." msgstr "Już powtórzono ten wpis." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Powtórzono" @@ -4073,16 +4081,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Zabroniono ci wysyÅ‚ania wpisów na tej stronie." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problem podczas zapisywania wpisu." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "BÅ‚Ä…d bazy danych podczas wprowadzania odpowiedzi: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4137,128 +4145,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Strona bez nazwy" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Główna nawigacja strony" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Strona domowa" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Profil osobisty i oÅ› czasu przyjaciół" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Konto" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "ZmieÅ„ adres e-mail, awatar, hasÅ‚o, profil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "PoÅ‚Ä…cz" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "PoÅ‚Ä…cz z serwisami" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "ZmieÅ„ konfiguracjÄ™ strony" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "ZaproÅ›" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "ZaproÅ› przyjaciół i kolegów do doÅ‚Ä…czenia do ciebie na %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Wyloguj siÄ™" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Wyloguj siÄ™ ze strony" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Utwórz konto" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Zaloguj siÄ™ na stronÄ™" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Pomoc" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Pomóż mi." -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Wyszukaj" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Wyszukaj osoby lub tekst" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Wpis strony" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Lokalne widoki" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Wpis strony" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Druga nawigacja strony" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "O usÅ‚udze" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "TOS" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Prywatność" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Kod źródÅ‚owy" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Kontakt" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Odznaka" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Licencja oprogramowania StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4267,12 +4275,12 @@ msgstr "" "**%%site.name%%** jest usÅ‚ugÄ… mikroblogowania prowadzonÄ… przez [%%site." "broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** jest usÅ‚ugÄ… mikroblogowania. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4283,31 +4291,31 @@ msgstr "" "status.net/) w wersji %s, dostÄ™pnego na [Powszechnej Licencji Publicznej GNU " "Affero](http://www.fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Licencja zawartoÅ›ci strony" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Wszystko " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "licencja." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginacja" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Później" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "WczeÅ›niej" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "WystÄ…piÅ‚ problem z tokenem sesji." @@ -4359,6 +4367,16 @@ msgstr "Powiadamia, kiedy pojawia siÄ™ ten zaÅ‚Ä…cznik" msgid "Tags for this attachment" msgstr "Znaczniki dla tego zaÅ‚Ä…cznika" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Zmiana hasÅ‚a" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Zmiana hasÅ‚a" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Wyniki polecenia" @@ -4566,7 +4584,6 @@ msgstr[1] "JesteÅ› czÅ‚onkiem tych grup:" msgstr[2] "JesteÅ› czÅ‚onkiem tych grup:" #: lib/command.php:745 -#, fuzzy msgid "" "Commands:\n" "on - turn on notifications\n" @@ -4610,38 +4627,41 @@ msgstr "" "on - wÅ‚Ä…cza powiadomienia\n" "off - wyÅ‚Ä…cza powiadomienia\n" "help - wyÅ›wietla tÄ™ pomoc\n" -"follow <pseudonim> - subskrybuje użytkownika\n" -"groups - wyÅ›wietla listÄ™ grup, do których doÅ‚Ä…czono\n" +"follow <pseudonim> - wÅ‚Ä…cza obserwowanie użytkownika\n" +"groups - wyÅ›wietla listÄ™ grup, do których doÅ‚Ä…czyÅ‚eÅ›\n" "subscriptions - wyÅ›wietla listÄ™ obserwowanych osób\n" "subscribers - wyÅ›wietla listÄ™ osób, które ciÄ™ obserwujÄ…\n" -"leave <pseudonim> - rezygnuje z subskrypcji użytkownika\n" +"leave <pseudonim> - rezygnuje z obserwowania użytkownika\n" "d <pseudonim> <tekst> - bezpoÅ›rednia wiadomość do użytkownika\n" -"get <pseudonim> - uzyskuje ostatni wpis użytkownika\n" -"whois <pseudonim> - uzyskuje informacje o profilu użytkownika\n" +"get <pseudonim> - zwraca ostatni wpis użytkownika\n" +"whois <pseudonim> - zwraca informacje o profilu użytkownika\n" "fav <pseudonim> - dodaje ostatni wpis użytkownika jako \"ulubiony\"\n" "fav #<identyfikator_wpisu> - dodaje wpis z podanym identyfikatorem jako " "\"ulubiony\"\n" +"repeat #<identyfikator_wpisu> - powtarza wiadomość z zadanym " +"identyfikatorem\n" +"repeat <pseudonim> - powtarza ostatniÄ… wiadomość od użytkownika\n" "reply #<identyfikator_wpisu> - odpowiada na wpis z podanym identyfikatorem\n" "reply <pseudonim> - odpowiada na ostatni wpis użytkownika\n" "join <grupa> - doÅ‚Ä…cza do grupy\n" -"login - uzyskuje odnoÅ›nik do logowania do interfejsu WWW\n" +"login - pobiera odnoÅ›nik do zalogowania siÄ™ do interfejsu WWW\n" "drop <grupa> - opuszcza grupÄ™\n" -"stats - uzyskuje statystyki\n" +"stats - pobiera statystyki\n" "stop - to samo co \"off\"\n" "quit - to samo co \"off\"\n" "sub <pseudonim> - to samo co \"follow\"\n" "unsub <pseudonim> - to samo co \"leave\"\n" "last <pseudonim> - to samo co \"get\"\n" -"on <pseudonim> - jeszcze nie zaimplementowano.\n" -"off <pseudonim> - jeszcze nie zaimplementowano.\n" -"nudge <pseudonim> - przypomina użytkownikowi o aktualizacji.\n" -"invite <numer telefonu> - jeszcze nie zaimplementowano.\n" -"track <wyraz> - jeszcze nie zaimplementowano.\n" -"untrack <wyraz> - jeszcze nie zaimplementowano.\n" -"track off - jeszcze nie zaimplementowano.\n" -"untrack all - jeszcze nie zaimplementowano.\n" -"tracks - jeszcze nie zaimplementowano.\n" -"tracking - jeszcze nie zaimplementowano.\n" +"on <pseudonim> - jeszcze nie zaimplementowano\n" +"off <pseudonim> - jeszcze nie zaimplementowano\n" +"nudge <pseudonim> - przypomina użytkownikowi o aktualizacji\n" +"invite <numer telefonu> - jeszcze nie zaimplementowano\n" +"track <wyraz> - jeszcze nie zaimplementowano\n" +"untrack <wyraz> - jeszcze nie zaimplementowano\n" +"track off - jeszcze nie zaimplementowano\n" +"untrack all - jeszcze nie zaimplementowano\n" +"tracks - jeszcze nie zaimplementowano\n" +"tracking - jeszcze nie zaimplementowano\n" #: lib/common.php:199 msgid "No configuration file found. " @@ -5157,7 +5177,7 @@ msgstr "" "rozmowÄ™ z innymi użytkownikami. Inni mogÄ… wysyÅ‚ać ci wiadomoÅ›ci tylko dla " "twoich oczu." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "z" @@ -5222,69 +5242,73 @@ msgstr "WyÅ›lij bezpoÅ›redni wpis" msgid "To" msgstr "Do" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "DostÄ™pne znaki" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "WyÅ›lij wpis" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Co sÅ‚ychać, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "ZaÅ‚Ä…cz" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "ZaÅ‚Ä…cz plik" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "Podziel siÄ™ swoim poÅ‚ożeniem" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "Północ" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "PoÅ‚udnie" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "Wschód" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "Zachód" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "w" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "w rozmowie" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Powtórzone przez" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Odpowiedz na ten wpis" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Odpowiedz" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Powtórzono wpis" @@ -5414,9 +5438,8 @@ msgid "Popular" msgstr "Popularne" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Powtórz ten wpis" +msgstr "Powtórzyć ten wpis?" #: lib/repeatform.php:132 msgid "Repeat this notice" diff --git a/locale/pt/LC_MESSAGES/statusnet.po b/locale/pt/LC_MESSAGES/statusnet.po index 34f7e5ab8..9e0172663 100644 --- a/locale/pt/LC_MESSAGES/statusnet.po +++ b/locale/pt/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:38+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:21+0000\n" "Language-Team: Portuguese\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pt\n" "X-Message-Group: out-statusnet\n" @@ -197,11 +197,11 @@ msgstr "Não foi possÃvel actualizar o seu design." msgid "You cannot block yourself!" msgstr "Os utilizadores não podem bloquear-se a si próprios!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Bloqueio do utilizador falhou." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Desbloqueio do utilizador falhou." @@ -315,31 +315,31 @@ msgid "Could not find target user." msgstr "Não foi possÃvel encontrar o utilizador de destino." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Alcunha só deve conter letras minúsculas e números. Sem espaços." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Alcunha já é usada. Tente outra." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Alcunha não é válida." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Página de acolhimento não é uma URL válida." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Nome completo demasiado longo (máx. 255 caracteres)." @@ -350,7 +350,7 @@ msgid "Description is too long (max %d chars)." msgstr "Descrição demasiado longa (máx. 140 caracteres)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Localidade demasiado longa (máx. 255 caracteres)." @@ -465,7 +465,7 @@ msgstr "Demasiado longo. Tamanho máx. das notas é %d caracteres." msgid "Not found" msgstr "Não encontrado" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "Tamanho máx. das notas é %d caracteres, incluÃndo a URL do anexo." @@ -594,7 +594,7 @@ msgid "Preview" msgstr "Antevisão" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Apagar" @@ -607,13 +607,13 @@ msgid "Crop" msgstr "Cortar" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -687,7 +687,7 @@ msgstr "Sim" msgid "Block this user" msgstr "Bloquear este utilizador" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Não foi possÃvel gravar informação do bloqueio." @@ -759,7 +759,7 @@ msgstr "Esse endereço já tinha sido confirmado." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Não foi possÃvel actualizar o utilizador." @@ -821,7 +821,7 @@ msgstr "Tem a certeza de que quer apagar esta nota?" msgid "Do not delete this notice" msgstr "Não apagar esta nota" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Apagar esta nota" @@ -960,7 +960,7 @@ msgstr "Repor predefinição" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1208,7 +1208,7 @@ msgstr "Esta nota já é uma favorita!" #: actions/favor.php:92 lib/disfavorform.php:140 msgid "Disfavor favorite" -msgstr "Desfavorecer favorita" +msgstr "Retirar das favoritas" #: actions/favorited.php:65 lib/popularnoticesection.php:88 #: lib/publicgroupnav.php:93 @@ -1464,7 +1464,7 @@ msgstr "Membros do grupo %s, página %d" msgid "A list of the users in this group." msgstr "Uma lista dos utilizadores neste grupo." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Admin" @@ -1562,7 +1562,7 @@ msgstr "Só um administrador pode desbloquear membros de um grupo." msgid "User is not blocked from group." msgstr "Acesso do utilizador ao grupo não foi bloqueado." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Erro ao remover o bloqueio." @@ -1749,7 +1749,7 @@ msgstr "Mensagem pessoal" msgid "Optionally add a personal message to the invitation." msgstr "Pode optar por acrescentar uma mensagem pessoal ao convite" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Enviar" @@ -1864,13 +1864,13 @@ msgstr "Chave inválida ou expirada." #: actions/login.php:147 msgid "Incorrect username or password." -msgstr "Nome de utilizador ou palavra-passe incorrectos." +msgstr "Nome de utilizador ou palavra-chave incorrectos." #: actions/login.php:153 msgid "Error setting user. You are probably not authorized." msgstr "Erro ao preparar o utilizador. Provavelmente não está autorizado." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Entrar" @@ -1902,7 +1902,7 @@ msgstr "" #: actions/login.php:267 msgid "Lost or forgotten password?" -msgstr "Perdeu ou esqueceu-se da palavra-passe?" +msgstr "Perdeu ou esqueceu-se da palavra-chave?" #: actions/login.php:286 msgid "" @@ -1910,7 +1910,7 @@ msgid "" "changing your settings." msgstr "" "Por razões de segurança, por favor reintroduza o seu nome de utilizador e " -"palavra-passe antes de alterar as suas configurações." +"palavra-chave antes de alterar as configurações." #: actions/login.php:290 #, php-format @@ -1983,7 +1983,7 @@ msgstr "Mensagem enviada" msgid "Direct message to %s sent" msgstr "Mensagem directa para %s enviada" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Erro do Ajax" @@ -1991,7 +1991,7 @@ msgstr "Erro do Ajax" msgid "New notice" msgstr "Nota nova" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Nota publicada" @@ -2220,7 +2220,7 @@ msgstr "Sem acesso de escrita no directório do fundo: %s" #: actions/pathsadminpanel.php:160 #, php-format msgid "Locales directory not readable: %s" -msgstr "Sem acesso de leitura do directório do locales: %s" +msgstr "Sem acesso de leitura ao directório do locales: %s" #: actions/pathsadminpanel.php:166 msgid "Invalid SSL server. The maximum length is 255 characters." @@ -2423,72 +2423,80 @@ msgstr "Localidade" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Onde está, por ex. \"Cidade, Região, PaÃs\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "Compartilhar a minha localização presente ao publicar notas" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Categorias" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Categorias para si (letras, números, -, ., _), separadas por vÃrgulas ou " "espaços" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "LÃngua" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "LÃngua preferida" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Fuso horário" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Em que fuso horário se encontra normalmente?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Subscrever automaticamente quem me subscreva (óptimo para seres não-humanos)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Biografia demasiado extensa (máx. %d caracteres)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Fuso horário não foi seleccionado." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "LÃngua é demasiado extensa (máx. 50 caracteres)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Categoria inválida: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Não foi possÃvel actualizar o utilizador para subscrição automática." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Não foi possÃvel gravar as preferências de localização." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Não foi possÃvel gravar o perfil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Não foi possÃvel gravar as categorias." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Configurações gravadas." @@ -2597,7 +2605,7 @@ msgstr "" "Podia [registar uma conta](%%action.register%%) e ser a primeira pessoa a " "publicar uma!" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Nuvem de categorias" @@ -2726,7 +2734,7 @@ msgstr "Erro ao configurar utilizador." #: actions/recoverpassword.php:382 msgid "New password successfully saved. You are now logged in." -msgstr "Nova palavra-passe foi guardada com sucesso. Está agora conectado." +msgstr "A palavra-chave nova foi gravada com sucesso. Iniciou uma sessão." #: actions/register.php:85 actions/register.php:189 actions/register.php:404 msgid "Sorry, only invited people can register." @@ -2740,7 +2748,7 @@ msgstr "Desculpe, código de convite inválido." msgid "Registration successful" msgstr "Registo efectuado" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registar" @@ -2932,7 +2940,7 @@ msgstr "Não pode repetir a sua própria nota." msgid "You already repeated that notice." msgstr "Já repetiu essa nota." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Repetida" @@ -4081,16 +4089,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Está proibido de publicar notas neste site." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problema na gravação da nota." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Ocorreu um erro na base de dados ao inserir a resposta: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4118,7 +4126,7 @@ msgstr "Carregar um avatar" #: lib/accountsettingsaction.php:116 msgid "Change your password" -msgstr "Modificar a sua palavra-passe" +msgstr "Modificar a sua palavra-chave" #: lib/accountsettingsaction.php:120 msgid "Change email handling" @@ -4145,128 +4153,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Página sem tÃtulo" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Navegação primária deste site" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "InÃcio" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Perfil pessoal e notas dos amigos" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Conta" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Altere o seu endereço electrónico, avatar, palavra-chave, perfil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Ligar" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Ligar aos serviços" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Alterar a configuração do site" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Convidar" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Convidar amigos e colegas para se juntarem a si em %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Sair" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Terminar esta sessão" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Criar uma conta" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Iniciar uma sessão" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Ajuda" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Ajudem-me!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Pesquisa" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Procurar pessoas ou pesquisar texto" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Aviso do site" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Vistas locais" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Aviso da página" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Navegação secundária deste site" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Sobre" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "Condições do Serviço" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privacidade" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Código" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contacto" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Emblema" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Licença de software do StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4275,12 +4283,12 @@ msgstr "" "**%%site.name%%** é um serviço de microblogues disponibilizado por [%%site." "broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** é um serviço de microblogues. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4291,31 +4299,31 @@ msgstr "" "disponibilizado nos termos da [GNU Affero General Public License](http://www." "fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Licença de conteúdos do site" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Tudo " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "licença." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginação" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" -msgstr "Depois" +msgstr "Posteriores" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" -msgstr "Antes" +msgstr "Anteriores" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Ocorreu um problema com a sua chave de sessão." @@ -4367,6 +4375,16 @@ msgstr "Notas em que este anexo aparece" msgid "Tags for this attachment" msgstr "Categorias para este anexo" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Mudança da palavra-chave" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Mudança da palavra-chave" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Resultados do comando" @@ -4697,15 +4715,15 @@ msgstr "Predefinições do design repostas" #: lib/disfavorform.php:114 lib/disfavorform.php:140 msgid "Disfavor this notice" -msgstr "Desfavorecer esta nota" +msgstr "Retirar esta nota das favoritas" #: lib/favorform.php:114 lib/favorform.php:140 msgid "Favor this notice" -msgstr "Favorecer esta nota" +msgstr "Eleger esta nota como favorita" #: lib/favorform.php:140 msgid "Favor" -msgstr "Favorecer" +msgstr "Eleger como favorita" #: lib/feed.php:85 msgid "RSS 1.0" @@ -5160,7 +5178,7 @@ msgstr "" "conversa com outros utilizadores. Outros podem enviar-lhe mensagens, a que " "só você terá acesso." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "de" @@ -5228,69 +5246,73 @@ msgstr "Enviar uma nota directa" msgid "To" msgstr "Para" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Caracteres disponÃveis" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Enviar uma nota" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Novidades, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "Anexar" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Anexar um ficheiro" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "Compartilhe a sua localização" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "N" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "S" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "E" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "O" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "coords." -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "em contexto" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Repetida por" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Responder a esta nota" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Responder" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Nota repetida" @@ -5420,9 +5442,8 @@ msgid "Popular" msgstr "Populares" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Repetir esta nota" +msgstr "Repetir esta nota?" #: lib/repeatform.php:132 msgid "Repeat this notice" diff --git a/locale/pt_BR/LC_MESSAGES/statusnet.po b/locale/pt_BR/LC_MESSAGES/statusnet.po index 254cb0e2f..72f9897f2 100644 --- a/locale/pt_BR/LC_MESSAGES/statusnet.po +++ b/locale/pt_BR/LC_MESSAGES/statusnet.po @@ -1,7 +1,7 @@ # Translation of StatusNet to Brazilian Portuguese # +# Author@translatewiki.net: Aracnus # Author@translatewiki.net: Ewout -# Author@translatewiki.net: McDutchie # Author@translatewiki.net: Vuln # -- # This file is distributed under the same license as the StatusNet package. @@ -10,12 +10,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:41+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:24+0000\n" "Language-Team: Brazilian Portuguese\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pt-br\n" "X-Message-Group: out-statusnet\n" @@ -24,7 +24,7 @@ msgstr "" #: actions/all.php:63 actions/public.php:97 actions/replies.php:92 #: actions/showfavorites.php:137 actions/tag.php:51 msgid "No such page" -msgstr "Essa página não existe." +msgstr "Esta página não existe." #: actions/all.php:74 actions/allrss.php:68 #: actions/apiaccountupdatedeliverydevice.php:113 @@ -50,7 +50,7 @@ msgstr "Essa página não existe." #: lib/galleryaction.php:59 lib/mailbox.php:82 lib/profileaction.php:77 #: lib/subs.php:34 lib/subs.php:116 msgid "No such user." -msgstr "Usuário não encontrado." +msgstr "Este usuário não existe." #: actions/all.php:84 #, php-format @@ -65,25 +65,27 @@ msgid "%s and friends" msgstr "%s e amigos" #: actions/all.php:99 -#, fuzzy, php-format +#, php-format msgid "Feed for friends of %s (RSS 1.0)" -msgstr "Feed para os amigos de %s" +msgstr "Fonte de mensagens dos amigos de %s (RSS 1.0)" #: actions/all.php:107 -#, fuzzy, php-format +#, php-format msgid "Feed for friends of %s (RSS 2.0)" -msgstr "Feed para os amigos de %s" +msgstr "Fonte de mensagens dos amigos de %s (RSS 2.0)" #: actions/all.php:115 -#, fuzzy, php-format +#, php-format msgid "Feed for friends of %s (Atom)" -msgstr "Feed para os amigos de %s" +msgstr "Fonte de mensagens dos amigos de %s (Atom)" #: actions/all.php:127 #, php-format msgid "" "This is the timeline for %s and friends but no one has posted anything yet." msgstr "" +"Esse é o fluxo de mensagens de %s e seus amigos, mas ninguém publicou nada " +"ainda." #: actions/all.php:132 #, php-format @@ -91,6 +93,8 @@ msgid "" "Try subscribing to more people, [join a group](%%action.groups%%) or post " "something yourself." msgstr "" +"Tente assinar mais pessoas, [unir-ser a um grupo](%%action.groups%%) ou " +"publicar algo." #: actions/all.php:134 #, php-format @@ -98,6 +102,9 @@ msgid "" "You can try to [nudge %s](../%s) from his profile or [post something to his " "or her attention](%%%%action.newnotice%%%%?status_textarea=%s)." msgstr "" +"Você pode tentar [chamar a atenção de %s](../%s) em seu perfil ou [publicar " +"alguma coisa que desperte seu interesse](%%%%action.newnotice%%%%?" +"status_textarea=%s)." #: actions/all.php:137 actions/replies.php:209 actions/showstream.php:202 #, php-format @@ -105,6 +112,8 @@ msgid "" "Why not [register an account](%%%%action.register%%%%) and then nudge %s or " "post a notice to his or her attention." msgstr "" +"Por que não [registrar uma conta](%%%%action.register%%%%) e então chamar a " +"atenção de %s ou publicar uma mensagem para sua atenção." #: actions/all.php:165 msgid "You and friends" @@ -121,7 +130,6 @@ msgstr "Atualizações de %1$s e amigos no %2$s!" #: actions/apiaccountupdateprofile.php:97 #: actions/apiaccountupdateprofilebackgroundimage.php:94 #: actions/apiaccountupdateprofilecolors.php:118 -#, fuzzy msgid "API method not found." msgstr "O método da API não foi encontrado!" @@ -144,9 +152,10 @@ msgid "" "You must specify a parameter named 'device' with a value of one of: sms, im, " "none" msgstr "" +"Você pode especificar um parâmetro denominado 'device', com um dos valores: " +"sms, im, none" #: actions/apiaccountupdatedeliverydevice.php:132 -#, fuzzy msgid "Could not update user." msgstr "Não foi possÃvel atualizar o usuário." @@ -160,7 +169,6 @@ msgid "User has no profile." msgstr "O usuário não tem perfil." #: actions/apiaccountupdateprofile.php:147 -#, fuzzy msgid "Could not save profile." msgstr "Não foi possÃvel salvar o perfil." @@ -174,31 +182,30 @@ msgid "" "The server was unable to handle that much POST data (%s bytes) due to its " "current configuration." msgstr "" +"O servidor não conseguiu manipular a quantidade de dados do POST (%s bytes) " +"devido à sua configuração atual." #: actions/apiaccountupdateprofilebackgroundimage.php:136 #: actions/apiaccountupdateprofilebackgroundimage.php:146 #: actions/apiaccountupdateprofilecolors.php:164 #: actions/apiaccountupdateprofilecolors.php:174 -#, fuzzy msgid "Unable to save your design settings." -msgstr "Não foi possÃvel salvar suas configurações do Twitter!" +msgstr "Não foi possÃvel salvar suas configurações de aparência." #: actions/apiaccountupdateprofilebackgroundimage.php:187 #: actions/apiaccountupdateprofilecolors.php:142 -#, fuzzy msgid "Could not update your design." -msgstr "Não foi possÃvel atualizar o usuário." +msgstr "Não foi possÃvel atualizar a sua aparência." #: actions/apiblockcreate.php:105 -#, fuzzy msgid "You cannot block yourself!" -msgstr "Não foi possÃvel atualizar o usuário." +msgstr "Você não pode bloquear a si mesmo!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Não foi possÃvel bloquear o usuário." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Não foi possÃvel desbloquear o usuário." @@ -215,7 +222,7 @@ msgstr "Todas as mensagens diretas enviadas por %s" #: actions/apidirectmessage.php:101 #, php-format msgid "Direct messages to %s" -msgstr "Mensagem direta para %s" +msgstr "Mensagens diretas para %s" #: actions/apidirectmessage.php:105 #, php-format @@ -249,7 +256,7 @@ msgstr "Nenhuma mensagem de texto!" #: actions/apidirectmessagenew.php:135 actions/newmessage.php:150 #, php-format msgid "That's too long. Max message size is %d chars." -msgstr "Isso é muito extenso. O tamanho máximo das mensagens é 140 caracteres." +msgstr "Isso é muito extenso. O tamanho máximo das mensagens é %d caracteres." #: actions/apidirectmessagenew.php:146 msgid "Recipient user not found." @@ -258,7 +265,7 @@ msgstr "O usuário destinatário não foi encontrado." #: actions/apidirectmessagenew.php:150 msgid "Can't send direct messages to users who aren't your friend." msgstr "" -"Não é possÃvel enviar mensagens diretas para usuários que não são seus " +"Não é possÃvel enviar mensagens diretas para usuários que não sejam seus " "amigos." #: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109 @@ -276,7 +283,7 @@ msgstr "Não foi possÃvel criar a favorita." #: actions/apifavoritedestroy.php:122 msgid "That status is not a favorite!" -msgstr "Essa mensagem não é uma favorita!" +msgstr "Essa mensagem não é favorita!" #: actions/apifavoritedestroy.php:134 actions/disfavor.php:87 msgid "Could not delete favorite." @@ -292,98 +299,96 @@ msgid "Could not follow user: %s is already on your list." msgstr "Não é possÃvel seguir o usuário: %s já está na sua lista." #: actions/apifriendshipsdestroy.php:109 -#, fuzzy msgid "Could not unfollow user: User not found." -msgstr "Não é possÃvel seguir o usuário: Usuário não encontrado." +msgstr "Não é possÃvel deixar de seguir o usuário: Usuário não encontrado." #: actions/apifriendshipsdestroy.php:120 msgid "You cannot unfollow yourself!" -msgstr "" +msgstr "Você não pode deixar de seguir você mesmo!" #: actions/apifriendshipsexists.php:94 msgid "Two user ids or screen_names must be supplied." msgstr "Duas IDs de usuário ou screen_names devem ser informados." #: actions/apifriendshipsshow.php:135 -#, fuzzy msgid "Could not determine source user." -msgstr "Não foi possÃvel recuperar o fluxo público." +msgstr "Não foi possÃvel determinar o usuário de origem." #: actions/apifriendshipsshow.php:143 msgid "Could not find target user." -msgstr "Não foi possÃvel encontrar usuário alvo." +msgstr "Não foi possÃvel encontrar usuário de destino." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" -"O apelido deve conter apenas letras minúsculas e/ou números e não pode ter " -"acentuação e espaços." +"A identificação deve conter apenas letras minúsculas e números e não pode " +"ter e espaços." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." -msgstr "Este apelido já está em uso. Tente outro." +msgstr "Esta identificação já está em uso. Tente outro." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." -msgstr "Não é um apelido válido." +msgstr "Não é uma identificação válida." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." -msgstr "A URL do site informada não é válida." +msgstr "A URL informada não é válida." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." -msgstr "O nome completo é muito extenso (máx. 255 caracteres)" +msgstr "Nome completo muito extenso (máx. 255 caracteres)" #: actions/apigroupcreate.php:213 #, php-format msgid "Description is too long (max %d chars)." -msgstr "Descrição muito extensa (máximo 140 caracteres)." +msgstr "Descrição muito extensa (máximo %d caracteres)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." -msgstr "A localização é muito extensa (máx. 255 caracteres)." +msgstr "Localização muito extensa (máx. 255 caracteres)." #: actions/apigroupcreate.php:243 actions/editgroup.php:215 #: actions/newgroup.php:159 #, php-format msgid "Too many aliases! Maximum %d." -msgstr "" +msgstr "Muitos apelidos! O máximo são %d." #: actions/apigroupcreate.php:264 actions/editgroup.php:224 #: actions/newgroup.php:168 #, php-format msgid "Invalid alias: \"%s\"" -msgstr "Tag inválida: \"%s\"" +msgstr "Apelido inválido: \"%s\"" #: actions/apigroupcreate.php:273 actions/editgroup.php:228 #: actions/newgroup.php:172 -#, fuzzy, php-format +#, php-format msgid "Alias \"%s\" already in use. Try another one." -msgstr "Este apelido já está em uso. Tente outro." +msgstr "O apelido \"%s\" já está em uso. Tente outro." #: actions/apigroupcreate.php:286 actions/editgroup.php:234 #: actions/newgroup.php:178 msgid "Alias can't be the same as nickname." -msgstr "" +msgstr "O apelido não pode ser igual à identificação." #: actions/apigroupismember.php:95 actions/apigroupjoin.php:104 #: actions/apigroupleave.php:104 actions/apigroupmembership.php:91 #: actions/apigroupshow.php:90 actions/apitimelinegroup.php:91 msgid "Group not found!" -msgstr "Grupo não encontrado." +msgstr "O grupo não foi encontrado!" #: actions/apigroupjoin.php:110 msgid "You are already a member of that group." @@ -391,12 +396,12 @@ msgstr "Você já é membro desse grupo." #: actions/apigroupjoin.php:119 actions/joingroup.php:95 lib/command.php:221 msgid "You have been blocked from that group by the admin." -msgstr "Você foi bloqueado desse grupo pelo administrador." +msgstr "O administrador desse grupo bloqueou sua inscrição." #: actions/apigroupjoin.php:138 -#, fuzzy, php-format +#, php-format msgid "Could not join user %s to group %s." -msgstr "Não é possÃvel acompanhar o usuário: Usuário não encontrado." +msgstr "Não foi possÃvel associar o usuário %s ao grupo %s." #: actions/apigroupleave.php:114 msgid "You are not a member of this group." @@ -405,17 +410,17 @@ msgstr "Você não é membro deste grupo." #: actions/apigroupleave.php:124 #, php-format msgid "Could not remove user %s to group %s." -msgstr "Não foi possÃvel remover o usuário %s do grupo %." +msgstr "Não foi possÃvel remover o usuário %s do grupo %s." #: actions/apigrouplist.php:95 -#, fuzzy, php-format +#, php-format msgid "%s's groups" msgstr "Grupos de %s" #: actions/apigrouplist.php:103 -#, fuzzy, php-format +#, php-format msgid "Groups %s is a member of on %s." -msgstr "O grupo %s é membro de" +msgstr "Os grupos dos quais %s é membro no %s." #: actions/apigrouplistall.php:90 actions/usergroups.php:62 #, php-format @@ -423,17 +428,17 @@ msgid "%s groups" msgstr "Grupos de %s" #: actions/apigrouplistall.php:94 -#, fuzzy, php-format +#, php-format msgid "groups on %s" -msgstr "Outras opções" +msgstr "grupos no %s" #: actions/apistatusesdestroy.php:107 msgid "This method requires a POST or DELETE." -msgstr "Este método requer POSTAGEM ou EXCLUSÃO." +msgstr "Esse método requer um POST ou DELETE." #: actions/apistatusesdestroy.php:130 msgid "You may not delete another user's status." -msgstr "Você não pode apagar o status de outro usuário." +msgstr "Você não pode excluir uma mensagem de outro usuário." #: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72 #: actions/deletenotice.php:52 actions/shownotice.php:92 @@ -441,42 +446,39 @@ msgid "No such notice." msgstr "Essa mensagem não existe." #: actions/apistatusesretweet.php:83 -#, fuzzy msgid "Cannot repeat your own notice." -msgstr "Não é possÃvel ligar a notificação." +msgstr "Você não pode repetria sua própria mensagem." #: actions/apistatusesretweet.php:91 -#, fuzzy msgid "Already repeated that notice." -msgstr "Excluir esta mensagem" +msgstr "Você já repetiu essa mensagem." #: actions/apistatusesshow.php:138 msgid "Status deleted." -msgstr "" +msgstr "A mensagem foi excluÃda." #: actions/apistatusesshow.php:144 msgid "No status with that ID found." -msgstr "Não foi encontrado nenhum status com esse ID." +msgstr "Não foi encontrada nenhuma mensagem com esse ID." #: actions/apistatusesupdate.php:157 actions/newnotice.php:155 #: scripts/maildaemon.php:71 #, php-format msgid "That's too long. Max notice size is %d chars." -msgstr "Está muito extenso. O tamanho máximo é de 140 caracteres." +msgstr "Está muito extenso. O tamanho máximo é de %s caracteres." #: actions/apistatusesupdate.php:198 msgid "Not found" msgstr "Não encontrado" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." -msgstr "" +msgstr "O tamanho máximo da mensagem é de %s caracteres" #: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261 -#, fuzzy msgid "Unsupported format." -msgstr "Formato de imagem não suportado." +msgstr "Formato não suportado." #: actions/apitimelinefavorites.php:108 #, php-format @@ -486,7 +488,7 @@ msgstr "%s / Favoritas de %s" #: actions/apitimelinefavorites.php:120 #, php-format msgid "%s updates favorited by %s / %s." -msgstr "%s atualizações de favoritas por %s / %s." +msgstr "%s marcadas como favoritas por %s / %s." #: actions/apitimelinegroup.php:109 actions/apitimelineuser.php:118 #: actions/grouprss.php:131 actions/userrss.php:90 @@ -498,17 +500,17 @@ msgstr "Mensagens de %s" #: actions/userrss.php:92 #, php-format msgid "Updates from %1$s on %2$s!" -msgstr "Atualizações de %1$s no %2$s!" +msgstr "Mensagens de %1$s no %2$s!" #: actions/apitimelinementions.php:117 -#, fuzzy, php-format +#, php-format msgid "%1$s / Updates mentioning %2$s" -msgstr "%1$s / Atualizações respondendo à %2$s" +msgstr "%1$s / Mensagens mencionando %2$s" #: actions/apitimelinementions.php:127 #, php-format msgid "%1$s updates that reply to updates from %2$s / %3$s." -msgstr "%1$s atualizações que respondem a mensagens de %2$s / %3$s." +msgstr "%1$s mensagens em resposta a mensagens de %2$s / %3$s." #: actions/apitimelinepublic.php:107 actions/publicrss.php:103 #, php-format @@ -518,46 +520,45 @@ msgstr "Mensagens públicas de %s" #: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #, php-format msgid "%s updates from everyone!" -msgstr "%s atualizações de todo mundo!" +msgstr "%s mensagens de todo mundo!" #: actions/apitimelineretweetedbyme.php:112 #, php-format msgid "Repeated by %s" -msgstr "" +msgstr "Repetida por %s" #: actions/apitimelineretweetedtome.php:111 -#, fuzzy, php-format +#, php-format msgid "Repeated to %s" -msgstr "Respostas para %s" +msgstr "Repetida para %s" #: actions/apitimelineretweetsofme.php:112 -#, fuzzy, php-format +#, php-format msgid "Repeats of %s" -msgstr "Respostas para %s" +msgstr "Repetições de %s" #: actions/apitimelinetag.php:102 actions/tag.php:66 #, php-format msgid "Notices tagged with %s" -msgstr "Mensagens etiquetadas com %s" +msgstr "Mensagens etiquetadas como %s" #: actions/apitimelinetag.php:108 actions/tagrss.php:64 -#, fuzzy, php-format +#, php-format msgid "Updates tagged with %1$s on %2$s!" -msgstr "Atualizações de %1$s no %2$s!" +msgstr "Mensagens etiquetadas como %1$s no %2$s!" #: actions/apiusershow.php:96 msgid "Not found." msgstr "Não encontrado." #: actions/attachment.php:73 -#, fuzzy msgid "No such attachment." -msgstr "Esse documento não existe." +msgstr "Este anexo não existe." #: actions/avatarbynickname.php:59 actions/grouprss.php:91 #: actions/leavegroup.php:76 msgid "No nickname." -msgstr "Nenhum apelido." +msgstr "Nenhuma identificação." #: actions/avatarbynickname.php:64 msgid "No size." @@ -575,7 +576,8 @@ msgstr "Avatar" #: actions/avatarsettings.php:78 #, php-format msgid "You can upload your personal avatar. The maximum file size is %s." -msgstr "Você pode enviar seu avatar pessoal. O tamanho máximo do arquivo é %s" +msgstr "" +"Você pode enviar seu avatar pessoal. O tamanho máximo do arquivo é de %s." #: actions/avatarsettings.php:106 actions/avatarsettings.php:185 #: actions/grouplogo.php:178 actions/remotesubscribe.php:191 @@ -599,7 +601,7 @@ msgid "Preview" msgstr "Visualização" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Excluir" @@ -612,13 +614,13 @@ msgid "Crop" msgstr "Cortar" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -641,7 +643,7 @@ msgstr "Selecione uma área quadrada da imagem para ser seu avatar" #: actions/avatarsettings.php:343 actions/grouplogo.php:377 msgid "Lost our file data." -msgstr "Nossos dados do arquivo foi perdido." +msgstr "Os dados do nosso arquivo foram perdidos." #: actions/avatarsettings.php:366 msgid "Avatar updated." @@ -652,9 +654,8 @@ msgid "Failed updating avatar." msgstr "Não foi possÃvel atualizar o avatar." #: actions/avatarsettings.php:393 -#, fuzzy msgid "Avatar deleted." -msgstr "O avatar foi atualizado." +msgstr "O avatar foi excluÃdo." #: actions/block.php:69 msgid "You already blocked that user." @@ -670,6 +671,10 @@ msgid "" "unsubscribed from you, unable to subscribe to you in the future, and you " "will not be notified of any @-replies from them." msgstr "" +"Tem certeza que deseja bloquear este usuário? Se fizer isso, ele deixará de " +"assiná-lo e será incapaz de fazê-lo no futuro. Além disso, você não receberá " +"nenhuma notificação acerca de qualquer citação (@usuário) que ele fizer de " +"você." #: actions/block.php:143 actions/deletenotice.php:145 #: actions/deleteuser.php:147 actions/groupblock.php:178 @@ -677,9 +682,8 @@ msgid "No" msgstr "Não" #: actions/block.php:143 actions/deleteuser.php:147 -#, fuzzy msgid "Do not block this user" -msgstr "Desbloquear este usuário" +msgstr "Não bloquear este usuário" #: actions/block.php:144 actions/deletenotice.php:146 #: actions/deleteuser.php:148 actions/groupblock.php:179 @@ -689,9 +693,9 @@ msgstr "Sim" #: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 msgid "Block this user" -msgstr "Bloquear usuário" +msgstr "Bloquear este usuário" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Não foi possÃvel salvar a informação de bloqueio." @@ -710,23 +714,22 @@ msgid "No such group" msgstr "Esse grupo não existe" #: actions/blockedfromgroup.php:90 -#, fuzzy, php-format +#, php-format msgid "%s blocked profiles" -msgstr "O usuário não tem perfil." +msgstr "Perfis bloqueados no %s" #: actions/blockedfromgroup.php:93 -#, fuzzy, php-format +#, php-format msgid "%s blocked profiles, page %d" -msgstr "%s e amigos, página %d" +msgstr "Perfis bloqueados no %s, página %d" #: actions/blockedfromgroup.php:108 msgid "A list of the users blocked from joining this group." -msgstr "" +msgstr "Uma lista dos usuários proibidos de se associarem a este grupo." #: actions/blockedfromgroup.php:281 -#, fuzzy msgid "Unblock user from group" -msgstr "Não foi possÃvel desbloquear o usuário." +msgstr "Desbloquear o usuário do grupo" #: actions/blockedfromgroup.php:313 lib/unblockform.php:69 msgid "Unblock" @@ -738,7 +741,7 @@ msgstr "Desbloquear este usuário" #: actions/bookmarklet.php:50 msgid "Post to " -msgstr "" +msgstr "Enviar para " #: actions/confirmaddress.php:75 msgid "No confirmation code." @@ -750,12 +753,12 @@ msgstr "O código de confirmação não foi encontrado." #: actions/confirmaddress.php:85 msgid "That confirmation code is not for you!" -msgstr "Esse código de confirmação não é seu!" +msgstr "Esse não é o seu código de confirmação!" #: actions/confirmaddress.php:90 #, php-format msgid "Unrecognized address type %s" -msgstr "Tipo de endereço %s desconhecido" +msgstr "Tipo de endereço desconhecido %s" #: actions/confirmaddress.php:94 msgid "That address has already been confirmed." @@ -764,7 +767,7 @@ msgstr "Esse endereço já foi confirmado." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Não foi possÃvel atualizar o usuário." @@ -784,9 +787,8 @@ msgid "The address \"%s\" has been confirmed for your account." msgstr "O endereço \"%s\" foi confirmado para sua conta." #: actions/conversation.php:99 -#, fuzzy msgid "Conversation" -msgstr "Código de confirmação" +msgstr "Conversa" #: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87 #: lib/profileaction.php:216 lib/searchgroupnav.php:82 @@ -801,7 +803,7 @@ msgstr "Mensagens" #: lib/adminpanelaction.php:72 lib/profileformaction.php:63 #: lib/settingsaction.php:72 msgid "Not logged in." -msgstr "Você não está logado." +msgstr "Você não está autenticado." #: actions/deletenotice.php:71 msgid "Can't delete this notice." @@ -812,8 +814,8 @@ msgid "" "You are about to permanently delete a notice. Once this is done, it cannot " "be undone." msgstr "" -"Você está prestes a apagar permanentemente uma mensagem. Isso não poderá ser " -"desfeito." +"Você está prestes a excluir permanentemente uma mensagem. Isso não poderá " +"ser desfeito." #: actions/deletenotice.php:109 actions/deletenotice.php:141 msgid "Delete notice" @@ -821,32 +823,28 @@ msgstr "Excluir a mensagem" #: actions/deletenotice.php:144 msgid "Are you sure you want to delete this notice?" -msgstr "Você tem certeza que deseja excluir esta mensagem?" +msgstr "Tem certeza que deseja excluir esta mensagem?" #: actions/deletenotice.php:145 -#, fuzzy msgid "Do not delete this notice" -msgstr "Não é possÃvel excluir esta mensagem." +msgstr "Não excluir esta mensagem." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Excluir esta mensagem" #: actions/deletenotice.php:157 -#, fuzzy msgid "There was a problem with your session token. Try again, please." msgstr "" -"Ocorreu um problema com o seu token de sessão. Tente novamente, por favor." +"Ocorreu um problema com o seu token de sessão. Por favor, tente novamente." #: actions/deleteuser.php:67 -#, fuzzy msgid "You cannot delete users." -msgstr "Não foi possÃvel atualizar o usuário." +msgstr "Você não pode excluir usuários." #: actions/deleteuser.php:74 -#, fuzzy msgid "You can only delete local users." -msgstr "Você não pode apagar o status de outro usuário." +msgstr "Você só pode excluir usuários locais." #: actions/deleteuser.php:110 actions/deleteuser.php:133 msgid "Delete user" @@ -857,66 +855,59 @@ msgid "" "Are you sure you want to delete this user? This will clear all data about " "the user from the database, without a backup." msgstr "" -"Você tem certeza que quer remover este usuário? Isso irá limpar todos os " -"dados sobre o usuário do banco de dados, sem backup." +"Tem certeza que deseja excluir este usuário? Isso irá eliminar todos os " +"dados deste usuário do banco de dados, sem cópia de segurança." #: actions/deleteuser.php:148 lib/deleteuserform.php:77 -#, fuzzy msgid "Delete this user" -msgstr "Excluir esta mensagem" +msgstr "Excluir este usuário" #: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124 #: lib/adminpanelaction.php:302 lib/groupnav.php:119 msgid "Design" -msgstr "" +msgstr "Aparência" #: actions/designadminpanel.php:73 msgid "Design settings for this StatusNet site." -msgstr "" +msgstr "Configurações da aparência deste site StatusNet." #: actions/designadminpanel.php:275 -#, fuzzy msgid "Invalid logo URL." -msgstr "Tamanho inválido." +msgstr "A URL da logo é inválida." #: actions/designadminpanel.php:279 -#, fuzzy, php-format +#, php-format msgid "Theme not available: %s" -msgstr "Esta página não está disponÃvel em um " +msgstr "Tema não disponÃvel: %s" #: actions/designadminpanel.php:375 -#, fuzzy msgid "Change logo" -msgstr "Altere a sua senha" +msgstr "Alterar a logo" #: actions/designadminpanel.php:380 -#, fuzzy msgid "Site logo" -msgstr "Convidar" +msgstr "Logo do site" #: actions/designadminpanel.php:387 -#, fuzzy msgid "Change theme" -msgstr "Alterar" +msgstr "Alterar o tema" #: actions/designadminpanel.php:404 -#, fuzzy msgid "Site theme" -msgstr "Nova mensagem" +msgstr "Tema do site" #: actions/designadminpanel.php:405 -#, fuzzy msgid "Theme for the site." -msgstr "Sair deste site" +msgstr "Tema para o site." #: actions/designadminpanel.php:417 lib/designsettings.php:101 msgid "Change background image" -msgstr "Alterar imagem de plano de fundo." +msgstr "Alterar imagem do fundo" #: actions/designadminpanel.php:422 actions/designadminpanel.php:497 #: lib/designsettings.php:178 msgid "Background" -msgstr "" +msgstr "Fundo" #: actions/designadminpanel.php:427 #, php-format @@ -924,63 +915,60 @@ msgid "" "You can upload a background image for the site. The maximum file size is %1" "$s." msgstr "" -"Você pode enviar uma imagem de plano de fundo para o site. O tamanho máximo " -"do arquivo é %l$s" +"Você pode enviar uma imagem de fundo para o site. O tamanho máximo do " +"arquivo é de %1 $s." #: actions/designadminpanel.php:457 lib/designsettings.php:139 msgid "On" -msgstr "Ligado" +msgstr "Ativado" #: actions/designadminpanel.php:473 lib/designsettings.php:155 msgid "Off" -msgstr "" +msgstr "Desativado" #: actions/designadminpanel.php:474 lib/designsettings.php:156 msgid "Turn background image on or off." -msgstr "" +msgstr "Ativar/desativar a imagem de fundo." #: actions/designadminpanel.php:479 lib/designsettings.php:161 msgid "Tile background image" -msgstr "" +msgstr "Ladrilhar a imagem de fundo" #: actions/designadminpanel.php:488 lib/designsettings.php:170 -#, fuzzy msgid "Change colours" -msgstr "Altere a sua senha" +msgstr "Alterar a cor" #: actions/designadminpanel.php:510 lib/designsettings.php:191 msgid "Content" msgstr "Conteúdo" #: actions/designadminpanel.php:523 lib/designsettings.php:204 -#, fuzzy msgid "Sidebar" -msgstr "Procurar" +msgstr "Barra lateral" #: actions/designadminpanel.php:536 lib/designsettings.php:217 msgid "Text" msgstr "Texto" #: actions/designadminpanel.php:549 lib/designsettings.php:230 -#, fuzzy msgid "Links" -msgstr "Lista" +msgstr "Links" #: actions/designadminpanel.php:577 lib/designsettings.php:247 msgid "Use defaults" -msgstr "Usar o padrão." +msgstr "Usar o padrão|" #: actions/designadminpanel.php:578 lib/designsettings.php:248 msgid "Restore default designs" -msgstr "" +msgstr "Restaura a aparência padrão" #: actions/designadminpanel.php:584 lib/designsettings.php:254 msgid "Reset back to default" -msgstr "" +msgstr "Restaura de volta ao padrão" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -990,15 +978,15 @@ msgstr "Salvar" #: actions/designadminpanel.php:587 lib/designsettings.php:257 msgid "Save design" -msgstr "" +msgstr "Salvar a aparência" #: actions/disfavor.php:81 msgid "This notice is not a favorite!" -msgstr "Essa mensagem não é uma favorita!" +msgstr "Esta mensagem não é uma favorita!" #: actions/disfavor.php:94 msgid "Add to favorites" -msgstr "Adicionar aos favoritos" +msgstr "Adicionar à s favoritas" #: actions/doc.php:69 msgid "No such document." @@ -1011,7 +999,7 @@ msgstr "Editar o grupo %s" #: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65 msgid "You must be logged in to create a group." -msgstr "Você deve estar logado para criar um grupo." +msgstr "Você deve estar autenticado para criar um grupo." #: actions/editgroup.php:103 actions/editgroup.php:168 #: actions/groupdesignsettings.php:104 actions/grouplogo.php:106 @@ -1025,16 +1013,15 @@ msgstr "Use esse formulário para editar o grupo." #: actions/editgroup.php:201 actions/newgroup.php:145 #, php-format msgid "description is too long (max %d chars)." -msgstr "descrição muito extensa (máximo 140 caracteres)." +msgstr "descrição muito extensa (máximo %d caracteres)." #: actions/editgroup.php:253 msgid "Could not update group." msgstr "Não foi possÃvel atualizar o grupo." #: actions/editgroup.php:259 classes/User_group.php:390 -#, fuzzy msgid "Could not create aliases." -msgstr "Não foi possÃvel criar a favorita." +msgstr "Não foi possÃvel criar os apelidos." #: actions/editgroup.php:269 msgid "Options saved." @@ -1047,7 +1034,7 @@ msgstr "Configurações do e-mail" #: actions/emailsettings.php:71 #, php-format msgid "Manage how you get email from %%site.name%%." -msgstr "Configure o recebimento de e-mails do %%site.name%%." +msgstr "Configure o recebimento de e-mails de %%site.name%%." #: actions/emailsettings.php:100 actions/imsettings.php:100 #: actions/smssettings.php:104 @@ -1083,7 +1070,7 @@ msgstr "Endereço de e-mail" #: actions/emailsettings.php:123 msgid "Email address, like \"UserName@example.org\"" -msgstr "Endereço de e-mail, ex: \"usuario@example.org\"" +msgstr "Endereço de e-mail, ex: \"usuario@exemplo.org\"" #: actions/emailsettings.php:126 actions/imsettings.php:133 #: actions/smssettings.php:145 @@ -1123,16 +1110,17 @@ msgstr "" #: actions/emailsettings.php:169 msgid "Send me email when someone sends me a private message." -msgstr "Envie-me um e-mail quando alguém enviar-me uma mensagem particular." +msgstr "Envie-me um e-mail quando alguém me mandar uma mensagem particular." #: actions/emailsettings.php:174 -#, fuzzy msgid "Send me email when someone sends me an \"@-reply\"." -msgstr "Envie-me um e-mail quando alguém enviar-me uma mensagem particular." +msgstr "" +"Envie-me um e-mail quando alguém mandar uma mensagem citando meu nome " +"(\"@nome\")." #: actions/emailsettings.php:179 msgid "Allow friends to nudge me and send me an email." -msgstr "Permitir que meus amigos chamem minha atenção e enviem-me um e-mail." +msgstr "Permita que meus amigos chamem minha atenção e enviem-me e-mails." #: actions/emailsettings.php:185 msgid "I want to post notices by email." @@ -1188,12 +1176,12 @@ msgstr "Nenhuma confirmação pendente para cancelar." #: actions/emailsettings.php:383 actions/imsettings.php:355 msgid "That is the wrong IM address." -msgstr "Isso é um endereço de IM errado." +msgstr "Isso é um endereço de MI errado." #: actions/emailsettings.php:395 actions/imsettings.php:367 #: actions/smssettings.php:386 msgid "Confirmation cancelled." -msgstr "Confirmação cancelada." +msgstr "A confirmação foi cancelada." #: actions/emailsettings.php:413 msgid "That is not your email address." @@ -1228,7 +1216,7 @@ msgstr "Essa mensagem já é uma favorita!" #: actions/favor.php:92 lib/disfavorform.php:140 msgid "Disfavor favorite" -msgstr "Excluir a favorita" +msgstr "Desmarcar a favorita" #: actions/favorited.php:65 lib/popularnoticesection.php:88 #: lib/publicgroupnav.php:93 @@ -1247,12 +1235,16 @@ msgstr "As etiquetas mais populares no site agora." #: actions/favorited.php:150 msgid "Favorite notices appear on this page but no one has favorited one yet." msgstr "" +"As mensagens favoritas aparecem nesta página, mas ninguém ainda marcou " +"nenhuma como favorita." #: actions/favorited.php:153 msgid "" "Be the first to add a notice to your favorites by clicking the fave button " "next to any notice you like." msgstr "" +"Seja o primeiro a marcar uma mensagem como favorita, clicando no botão " +"próximo a qualquer uma que você goste." #: actions/favorited.php:156 #, php-format @@ -1260,6 +1252,8 @@ msgid "" "Why not [register an account](%%action.register%%) and be the first to add a " "notice to your favorites!" msgstr "" +"Por que você não [registra uma conta](%%action.register%%) pra ser o " +"primeiro a adicionar uma mensagem aos favoritos?" #: actions/favoritesrss.php:111 actions/showfavorites.php:77 #: lib/personalgroupnav.php:115 @@ -1268,51 +1262,46 @@ msgid "%s's favorite notices" msgstr "Mensagens favoritas de %s" #: actions/favoritesrss.php:115 -#, fuzzy, php-format +#, php-format msgid "Updates favored by %1$s on %2$s!" -msgstr "Atualizações de %1$s no %2$s!" +msgstr "Mensagens favoritas de %1$s no %2$s!" #: actions/featured.php:69 lib/featureduserssection.php:87 #: lib/publicgroupnav.php:89 msgid "Featured users" -msgstr "Usuários de destaque" +msgstr "Usuários em destaque" #: actions/featured.php:71 #, php-format msgid "Featured users, page %d" -msgstr "Usuários de destaque, pág. %d" +msgstr "Usuários em destaque, pág. %d" #: actions/featured.php:99 #, php-format msgid "A selection of some great users on %s" -msgstr "" +msgstr "Uma seleção de alguns grandes usuários no%s" #: actions/file.php:34 -#, fuzzy msgid "No notice ID." -msgstr "Nova mensagem" +msgstr "Sem ID da mensagem." #: actions/file.php:38 -#, fuzzy msgid "No notice." -msgstr "Nova mensagem" +msgstr "Nenhuma mensagem." #: actions/file.php:42 -#, fuzzy msgid "No attachments." -msgstr "Esse documento não existe." +msgstr "Nenhum anexo." #: actions/file.php:51 -#, fuzzy msgid "No uploaded attachments." -msgstr "Esse documento não existe." +msgstr "Nenhum anexo enviado." #: actions/finishremotesubscribe.php:69 msgid "Not expecting this response!" msgstr "Não esperava por esta resposta!" #: actions/finishremotesubscribe.php:80 -#, fuzzy msgid "User being listened to does not exist." msgstr "O usuário que está está sendo acompanhado não existe." @@ -1326,40 +1315,34 @@ msgstr "Esse usuário bloqueou o seu pedido de assinatura." #: actions/finishremotesubscribe.php:110 msgid "You are not authorized." -msgstr "Não autorizado." +msgstr "Você não está autorizado." #: actions/finishremotesubscribe.php:113 -#, fuzzy msgid "Could not convert request token to access token." -msgstr "" -"Não foi possÃvel converter os tokens de requisição para tokens de acesso." +msgstr "Não foi possÃvel converter o token de requisição para token de acesso." #: actions/finishremotesubscribe.php:118 -#, fuzzy msgid "Remote service uses unknown version of OMB protocol." -msgstr "Versão desconhecida do protocolo OMB." +msgstr "O serviço remoto usa uma versão desconhecida do protocolo OMB." #: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306 msgid "Error updating remote profile" -msgstr "Erro na atualização do perfil remoto" +msgstr "Ocorreu um erro na atualização do perfil remoto" #: actions/foafgroup.php:44 actions/foafgroup.php:62 actions/groupblock.php:86 #: actions/grouprss.php:98 actions/groupunblock.php:86 #: actions/leavegroup.php:83 actions/makeadmin.php:86 lib/command.php:212 #: lib/command.php:263 -#, fuzzy msgid "No such group." -msgstr "Essa etiqueta não existe." +msgstr "Esse grupo não existe." #: actions/getfile.php:75 -#, fuzzy msgid "No such file." -msgstr "Essa mensagem não existe." +msgstr "Esse arquivo não existe." #: actions/getfile.php:79 -#, fuzzy msgid "Cannot read file." -msgstr "Nosso arquivo foi perdido." +msgstr "Não foi possÃvel ler o arquivo." #: actions/groupblock.php:71 actions/groupunblock.php:71 #: actions/makeadmin.php:71 actions/subedit.php:46 @@ -1375,28 +1358,24 @@ msgstr "Não foi encontrado nenhum perfil com esse ID." #: actions/groupblock.php:81 actions/groupunblock.php:81 #: actions/makeadmin.php:81 -#, fuzzy msgid "No group specified." -msgstr "Não foi especificado nenhum perfil." +msgstr "Não foi especificado nenhum grupo." #: actions/groupblock.php:91 msgid "Only an admin can block group members." -msgstr "Apenas o administrador pode bloquear usuários do grupo." +msgstr "Somente um administrador pode bloquear usuários no grupo." #: actions/groupblock.php:95 -#, fuzzy msgid "User is already blocked from group." -msgstr "O usuário bloqueou você." +msgstr "O usuário já está bloqueado no grupo." #: actions/groupblock.php:100 -#, fuzzy msgid "User is not a member of group." -msgstr "Você não está assinando esse perfil." +msgstr "O usuário não é um membro do grupo" #: actions/groupblock.php:136 actions/groupmembers.php:314 -#, fuzzy msgid "Block user from group" -msgstr "Bloquear usuário" +msgstr "Bloquear o usuário no grupo" #: actions/groupblock.php:162 #, php-format @@ -1405,57 +1384,57 @@ msgid "" "be removed from the group, unable to post, and unable to subscribe to the " "group in the future." msgstr "" +"Tem certeza que deseja bloquear o usuário \"%s\" no grupo \"%s\"? Ele será " +"removido do grupo e impossibilitado de publicar e de se juntar ao grupo " +"futuramente." #: actions/groupblock.php:178 -#, fuzzy msgid "Do not block this user from this group" -msgstr "Não é possÃvel acompanhar o usuário: Usuário não encontrado." +msgstr "Não bloquear este usuário neste grupo" #: actions/groupblock.php:179 -#, fuzzy msgid "Block this user from this group" -msgstr "Bloquear usuário" +msgstr "Bloquear este usuário neste grupo" #: actions/groupblock.php:196 msgid "Database error blocking user from group." msgstr "" +"Ocorreu um erro no banco de dados ao tentar bloquear o usuário no grupo." #: actions/groupbyid.php:74 msgid "No ID" -msgstr "" +msgstr "Sem ID" #: actions/groupdesignsettings.php:68 msgid "You must be logged in to edit a group." -msgstr "Você deve estar logado para editar um grupo." +msgstr "Você precisa estar autenticado para editar um grupo." #: actions/groupdesignsettings.php:141 -#, fuzzy msgid "Group design" -msgstr "Outras opções" +msgstr "Aparência do grupo" #: actions/groupdesignsettings.php:152 msgid "" "Customize the way your group looks with a background image and a colour " "palette of your choice." msgstr "" +"Personalize a aparência do grupo com uma imagem de fundo e uma paleta de " +"cores à sua escolha." #: actions/groupdesignsettings.php:263 actions/userdesignsettings.php:186 #: lib/designsettings.php:391 lib/designsettings.php:413 -#, fuzzy msgid "Couldn't update your design." -msgstr "Não foi possÃvel atualizar o usuário." +msgstr "Não foi possÃvel atualizar a aparência." #: actions/groupdesignsettings.php:287 actions/groupdesignsettings.php:297 #: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220 #: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273 -#, fuzzy msgid "Unable to save your design settings!" -msgstr "Não foi possÃvel salvar suas configurações do Twitter!" +msgstr "Não foi possÃvel salvar suas configurações da aparência!" #: actions/groupdesignsettings.php:308 actions/userdesignsettings.php:231 -#, fuzzy msgid "Design preferences saved." -msgstr "As preferências de sincronização foram salvas." +msgstr "As configurações da aparência foram salvas." #: actions/grouplogo.php:139 actions/grouplogo.php:192 msgid "Group logo" @@ -1466,35 +1445,36 @@ msgstr "Logo do grupo" msgid "" "You can upload a logo image for your group. The maximum file size is %s." msgstr "" +"Você pode enviar uma imagem de logo para o seu grupo. O tamanho máximo do " +"arquivo é %s." #: actions/grouplogo.php:362 -#, fuzzy msgid "Pick a square area of the image to be the logo." -msgstr "Selecione uma área quadrada da imagem para ser seu avatar" +msgstr "Selecione uma área quadrada da imagem para definir a logo" #: actions/grouplogo.php:396 msgid "Logo updated." -msgstr "O avatar foi atualizado." +msgstr "A logo foi atualizada." #: actions/grouplogo.php:398 msgid "Failed updating logo." -msgstr "Não foi possÃvel atualizar o avatar." +msgstr "Não foi possÃvel atualizar a logo." #: actions/groupmembers.php:93 lib/groupnav.php:92 #, php-format msgid "%s group members" -msgstr "" +msgstr "Membros do grupo %s" #: actions/groupmembers.php:96 #, php-format msgid "%s group members, page %d" -msgstr "" +msgstr "Membros do grupo %s, pág. %d" #: actions/groupmembers.php:111 msgid "A list of the users in this group." -msgstr "" +msgstr "Uma lista dos usuários deste grupo." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Admin" @@ -1503,33 +1483,31 @@ msgid "Block" msgstr "Bloquear" #: actions/groupmembers.php:441 -#, fuzzy msgid "Make user an admin of the group" -msgstr "Você deve ser o administrador do grupo para editá-lo" +msgstr "Tornar o usuário um administrador do grupo" #: actions/groupmembers.php:473 -#, fuzzy msgid "Make Admin" -msgstr "Admin" +msgstr "Tornar administrador" #: actions/groupmembers.php:473 msgid "Make this user an admin" -msgstr "" +msgstr "Torna este usuário um administrador" #: actions/grouprss.php:133 -#, fuzzy, php-format +#, php-format msgid "Updates from members of %1$s on %2$s!" -msgstr "Atualizações de %1$s no %2$s!" +msgstr "Atualizações dos membros de %1$s no %2$s!" #: actions/groups.php:62 lib/profileaction.php:210 lib/profileaction.php:230 #: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98 msgid "Groups" -msgstr "" +msgstr "Grupos" #: actions/groups.php:64 #, php-format msgid "Groups, page %d" -msgstr "" +msgstr "Groupos, pág. %d" #: actions/groups.php:90 #, php-format @@ -1540,32 +1518,33 @@ msgid "" "for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup" "%%%%)" msgstr "" +"Os grupos de %%%%site.name%%%% lhe permite encontrar e conversar com pessoas " +"que tenham interesses similares. Após associar-se a um grupo, você pode " +"enviar mensagens para todos os seus membros usando a sintaxe \"!nomedogrupo" +"\". Não encontrou um grupo que lhe agrade? Experimente [procurar por um](%%%%" +"action.groupsearch%%%%) ou [criar o seu próprio!](%%%%action.newgroup%%%%)" #: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122 -#, fuzzy msgid "Create a new group" -msgstr "Criar uma nova conta" +msgstr "Criar um novo grupo" #: actions/groupsearch.php:52 -#, fuzzy, php-format +#, php-format msgid "" "Search for groups on %%site.name%% by their name, location, or description. " "Separate the terms by spaces; they must be 3 characters or more." msgstr "" -"Procurar por pessoas em %%site.name%% por seus nomes, localidade ou " -"interesses. Separe os termos da busca com espaços; eles devem ter 3 " -"caracteres ou mais." +"Procurar grupos no %%site.name%% por seus nomes, localização ou descrição. " +"Separe os termos com espaços; eles devem ter 3 ou mais caracteres." #: actions/groupsearch.php:58 -#, fuzzy msgid "Group search" -msgstr "Procurar pessoas" +msgstr "Procurar grupos" #: actions/groupsearch.php:79 actions/noticesearch.php:117 #: actions/peoplesearch.php:83 -#, fuzzy msgid "No results." -msgstr "Nenhum resultado" +msgstr "Nenhum resultado." #: actions/groupsearch.php:82 #, php-format @@ -1573,6 +1552,8 @@ msgid "" "If you can't find the group you're looking for, you can [create it](%%action." "newgroup%%) yourself." msgstr "" +"Caso não encontre o grupo que está procurando, você pode [criá-lo](%%action." +"newgroup%%)." #: actions/groupsearch.php:85 #, php-format @@ -1580,23 +1561,24 @@ msgid "" "Why not [register an account](%%action.register%%) and [create the group](%%" "action.newgroup%%) yourself!" msgstr "" +"Por que você não [se cadastra](%%action.register%%) e [cria o grupo](%%" +"action.newgroup%%) você mesmo?" #: actions/groupunblock.php:91 msgid "Only an admin can unblock group members." -msgstr "" +msgstr "Somente um administrador pode desbloquear membros do grupo." #: actions/groupunblock.php:95 -#, fuzzy msgid "User is not blocked from group." -msgstr "O usuário bloqueou você." +msgstr "O usuário não está bloqueado no grupo." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Erro na remoção do bloqueio." #: actions/imsettings.php:59 msgid "IM Settings" -msgstr "Configurações do IM" +msgstr "Configurações do MI" #: actions/imsettings.php:70 #, php-format @@ -1604,13 +1586,12 @@ msgid "" "You can send and receive notices through Jabber/GTalk [instant messages](%%" "doc.im%%). Configure your address and settings below." msgstr "" -"Você pode enviar e receber mensagens através dos [instant messages](%%doc.im%" -"%) Jabber/GTalk. Configure seu endereço e opções abaixo." +"Você pode enviar e receber mensagens através dos [mensageiros instantâneos](%" +"%doc.im%%) Jabber/GTalk. Configure seu endereço e opções abaixo." #: actions/imsettings.php:89 -#, fuzzy msgid "IM is not available." -msgstr "Esta página não está disponÃvel em um " +msgstr "MI não está disponÃvel" #: actions/imsettings.php:106 msgid "Current confirmed Jabber/GTalk address." @@ -1628,7 +1609,7 @@ msgstr "" #: actions/imsettings.php:124 msgid "IM Address" -msgstr "Endereço do IM" +msgstr "Endereço do MI" #: actions/imsettings.php:126 #, php-format @@ -1636,13 +1617,13 @@ msgid "" "Jabber or GTalk address, like \"UserName@example.org\". First, make sure to " "add %s to your buddy list in your IM client or on GTalk." msgstr "" -"Endereço de Jabber ou GTalk, ex: \"usuario@example.org\". Primeiro, " -"certifique-se de adicionar %s à sua lista de contatos no seu cliente de IM " +"Endereço de Jabber ou GTalk, ex: \"usuario@exemplo.org\". Primeiro, " +"certifique-se de adicionar %s à sua lista de contatos em seu cliente de MI " "ou no GTalk." #: actions/imsettings.php:143 msgid "Send me notices through Jabber/GTalk." -msgstr "Envie-me as mensagens via Jabber/GTalk." +msgstr "Envie-me mensagens via Jabber/GTalk." #: actions/imsettings.php:148 msgid "Post a notice when my Jabber/GTalk status changes." @@ -1651,7 +1632,7 @@ msgstr "Publicar uma mensagem quando eu mudar de status no Jabber/GTalk." #: actions/imsettings.php:153 msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to." msgstr "" -"Envie-me respostas de pessoas que eu não estou seguindo através do Jabber/" +"Envie-me respostas de pessoas que eu não estou assinando através do Jabber/" "GTalk." #: actions/imsettings.php:159 @@ -1709,17 +1690,18 @@ msgstr "" #: actions/invite.php:39 msgid "Invites have been disabled." -msgstr "" +msgstr "Os convites foram desabilitados." #: actions/invite.php:41 #, php-format msgid "You must be logged in to invite other users to use %s" -msgstr "Você deve estar logado para convidar outros usuários para usar o %s" +msgstr "" +"Você deve estar autenticado para convidar outros usuários para usar o %s" #: actions/invite.php:72 #, php-format msgid "Invalid email address: %s" -msgstr "Não é um endereço de e-mail válido: %s" +msgstr "Endereço de e-mail inválido: %s" #: actions/invite.php:110 msgid "Invitation(s) sent" @@ -1741,7 +1723,7 @@ msgstr "%s (%s)" #: actions/invite.php:136 msgid "" "These people are already users and you were automatically subscribed to them:" -msgstr "Estas pessoas já são usuárias e você as acompanha automaticamente:" +msgstr "Estas pessoas já são usuárias e você as assinou automaticamente:" #: actions/invite.php:144 msgid "Invitation(s) sent to the following people:" @@ -1778,14 +1760,14 @@ msgstr "Mensagem pessoal" msgid "Optionally add a personal message to the invitation." msgstr "Você pode, opcionalmente, adicionar uma mensagem pessoal ao convite." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Enviar" #: actions/invite.php:226 #, php-format msgid "%1$s has invited you to join them on %2$s" -msgstr "%1$s convidou você para se juntar ao %2$s" +msgstr "%1$s convidou você para se juntar a %2$s" #: actions/invite.php:228 #, php-format @@ -1817,13 +1799,13 @@ msgid "" "\n" "Sincerely, %2$s\n" msgstr "" -"%1$s convidou você para se juntar ao %2$s (%3$s).\n" +"%1$s convidou você para se juntar a %2$s (%3$s).\n" "\n" -"%2$s é um serviço de microblogagem que lhe permite manter-se atualizado com " -"as pessoas que você conhece e com as que lhe interessam.\n" +"%2$s é um serviço de microblog que lhe permite manter-se atualizado com as " +"pessoas que você conhece e com as que lhe interessam.\n" "\n" -"Você também pode compartilhar notÃcias sobre você mesmo, seus pensamentos, " -"ou sua vida on-line com as pessoas que lhe conhecem. Também é ótimo para " +"Você também pode compartilhar notÃcias sobre você mesmo, seus pensamentos ou " +"sua vida on-line com as pessoas que lhe conhecem. Também é ótimo para " "encontrar novas pessoas que compartilham os mesmos interesses que você.\n" "\n" "%1$s disse:\n" @@ -1845,84 +1827,76 @@ msgstr "" "Cordialmente, %2$s\n" #: actions/joingroup.php:60 -#, fuzzy msgid "You must be logged in to join a group." -msgstr "" -"Você deve estar autenticado para convidar outros usuários para usar o %s" +msgstr "Você deve estar autenticado para se associar a um grupo." #: actions/joingroup.php:90 lib/command.php:217 -#, fuzzy msgid "You are already a member of that group" -msgstr "Você já está assinando esses usuários:" +msgstr "Você já é um membro desse grupo." #: actions/joingroup.php:128 lib/command.php:234 -#, fuzzy, php-format +#, php-format msgid "Could not join user %s to group %s" -msgstr "Não é possÃvel acompanhar o usuário: Usuário não encontrado." +msgstr "Não foi possÃvel associar o usuário %s ao grupo %s" #: actions/joingroup.php:135 lib/command.php:239 -#, fuzzy, php-format +#, php-format msgid "%s joined group %s" -msgstr "%s / Favoritas de %s" +msgstr "%s associou-se ao grupo %s" #: actions/leavegroup.php:60 -#, fuzzy msgid "You must be logged in to leave a group." -msgstr "" -"Você deve estar autenticado para convidar outros usuários para usar o %s" +msgstr "Você deve estar autenticado para sair de um grupo." #: actions/leavegroup.php:90 lib/command.php:268 -#, fuzzy msgid "You are not a member of that group." -msgstr "Você não está assinando esse perfil." +msgstr "Você não é um membro desse grupo." #: actions/leavegroup.php:119 lib/command.php:278 -#, fuzzy msgid "Could not find membership record." -msgstr "Não foi possÃvel atualizar o registro do usuário." +msgstr "Não foi possÃvel encontrar o registro do membro." #: actions/leavegroup.php:127 lib/command.php:284 -#, fuzzy, php-format +#, php-format msgid "Could not remove user %s to group %s" -msgstr "Não é possÃvel acompanhar o usuário: Usuário não encontrado." +msgstr "Não foi possÃvel remover o usuário %s do grupo %s" #: actions/leavegroup.php:134 lib/command.php:289 #, php-format msgid "%s left group %s" -msgstr "" +msgstr "%s deixou o grupo %s" #: actions/login.php:83 actions/register.php:137 msgid "Already logged in." -msgstr "Já está logado." +msgstr "Já está autenticado." #: actions/login.php:114 actions/login.php:124 -#, fuzzy msgid "Invalid or expired token." -msgstr "O conteúdo da mensagem é inválido" +msgstr "Token inválido ou expirado." #: actions/login.php:147 msgid "Incorrect username or password." msgstr "Nome de usuário e/ou senha incorreto(s)." #: actions/login.php:153 -#, fuzzy msgid "Error setting user. You are probably not authorized." -msgstr "Não autorizado." +msgstr "" +"Erro na configuração do usuário. Você provavelmente não tem autorização." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" -msgstr "Logar" +msgstr "Entrar" #: actions/login.php:247 msgid "Login to site" -msgstr "" +msgstr "Autenticar-se no site" #: actions/login.php:250 actions/profilesettings.php:106 #: actions/register.php:423 actions/showgroup.php:236 actions/tagother.php:94 #: lib/groupeditform.php:152 lib/userprofile.php:131 msgid "Nickname" -msgstr "Apelido" +msgstr "Usuário" #: actions/login.php:253 actions/register.php:428 #: lib/accountsettingsaction.php:116 @@ -1936,8 +1910,8 @@ msgstr "Lembrar neste computador" #: actions/login.php:257 actions/register.php:479 msgid "Automatically login in the future; not for shared computers!" msgstr "" -"Entrar automaticamente sem pedir a senha. Não use em computadores " -"compartilhados!" +"Entra automaticamente da próxima vez, sem pedir a senha. Não use em " +"computadores compartilhados!" #: actions/login.php:267 msgid "Lost or forgotten password?" @@ -1952,46 +1926,46 @@ msgstr "" "senha antes de alterar suas configurações." #: actions/login.php:290 -#, fuzzy, php-format +#, php-format msgid "" "Login with your username and password. Don't have a username yet? [Register]" "(%%action.register%%) a new account." msgstr "" -"Logar-se com seu nome de usuário e senha. Não tem um nome de usuário ainda? " -"[Registre](%%action.register%%) uma nova conta, ou use uma [OpenID](%%action." -"openidlogin%%)." +"Digite seu nome de usuário e senha. Ainda não possui um usuário? [Registre](%" +"%action.register%%) uma nova conta." #: actions/makeadmin.php:91 msgid "Only an admin can make another user an admin." msgstr "" +"Somente um administrador pode dar privilégios de administração para outro " +"usuário." #: actions/makeadmin.php:95 #, php-format msgid "%s is already an admin for group \"%s\"." -msgstr "" +msgstr "%s já é um administrador do grupo \"%s\"." #: actions/makeadmin.php:132 #, php-format msgid "Can't get membership record for %s in group %s" -msgstr "" +msgstr "Não foi possÃvel obter o registro de membro de %s no grupo %s" #: actions/makeadmin.php:145 #, php-format msgid "Can't make %s an admin for group %s" -msgstr "" +msgstr "Não foi possÃvel tornar %s um administrador do grupo %s" #: actions/microsummary.php:69 msgid "No current status" -msgstr "Nenhum status atual" +msgstr "Nenhuma mensagem atual" #: actions/newgroup.php:53 msgid "New group" -msgstr "" +msgstr "Novo grupo" #: actions/newgroup.php:110 -#, fuzzy msgid "Use this form to create a new group." -msgstr "Você pode criar uma nova conta usando esse formulário. " +msgstr "Utilize este formulário para criar um novo grupo." #: actions/newmessage.php:71 actions/newmessage.php:231 msgid "New message" @@ -1999,7 +1973,7 @@ msgstr "Nova mensagem" #: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:367 msgid "You can't send a message to this user." -msgstr "Você não pode enviar uma mensagem para esse usuário." +msgstr "Você não pode enviar mensagens para este usuário." #: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:351 #: lib/command.php:484 @@ -2008,26 +1982,25 @@ msgstr "Nenhum conteúdo!" #: actions/newmessage.php:158 msgid "No recipient specified." -msgstr "Nenhum destinatário especificado." +msgstr "Não foi especificado nenhum destinatário." #: actions/newmessage.php:164 lib/command.php:370 msgid "" "Don't send a message to yourself; just say it to yourself quietly instead." msgstr "" -"Não envie uma mensagem para você mesmo(a); ao invés disso, apenas diga-a " -"para si." +"Não envie mensagens para você mesmo(a); ao invés disso, apenas diga-a para " +"si, discretamente." #: actions/newmessage.php:181 -#, fuzzy msgid "Message sent" -msgstr "Nova mensagem" +msgstr "A mensagem foi enviada" #: actions/newmessage.php:185 lib/command.php:376 #, php-format msgid "Direct message to %s sent" msgstr "A mensagem direta para %s foi enviada" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Erro no Ajax" @@ -2035,9 +2008,9 @@ msgstr "Erro no Ajax" msgid "New notice" msgstr "Nova mensagem" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" -msgstr "Mensagem publicada" +msgstr "A mensagem foi publicada" #: actions/noticesearch.php:68 #, php-format @@ -2045,17 +2018,17 @@ msgid "" "Search for notices on %%site.name%% by their contents. Separate search terms " "by spaces; they must be 3 characters or more." msgstr "" -"Procurar mensagens em %%site.name%% por seu conteúdo. Separe os termos da " -"busca com espaços; eles devem ter 3 caracteres ou mais." +"Procurar mensagens no %%site.name%% por seu conteúdo. Separe os termos da " +"busca com espaços; eles devem ter 3 ou mais caracteres." #: actions/noticesearch.php:78 msgid "Text search" msgstr "Procurar por texto" #: actions/noticesearch.php:91 -#, fuzzy, php-format +#, php-format msgid "Search results for \"%s\" on %s" -msgstr " Procurar por \"%s\" no fluxo de mensagens" +msgstr "Resultados da procura por \"%s\" no %s" #: actions/noticesearch.php:121 #, php-format @@ -2063,6 +2036,8 @@ msgid "" "Be the first to [post on this topic](%%%%action.newnotice%%%%?" "status_textarea=%s)!" msgstr "" +"Seja o primeiro a [publicar sobre este tópico](%%%%action.newnotice%%%%?" +"status_textarea=%s)!" #: actions/noticesearch.php:124 #, php-format @@ -2070,16 +2045,19 @@ msgid "" "Why not [register an account](%%%%action.register%%%%) and be the first to " "[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!" msgstr "" +"Por que você não [registra uma conta](%%%%action.register%%%%) pra ser o " +"primeiro a [publicar sobre este tópico](%%%%action.newnotice%%%%?" +"status_textarea=%s)?" #: actions/noticesearchrss.php:96 #, php-format msgid "Updates with \"%s\"" -msgstr "" +msgstr "Mensagens com \"%s\"" #: actions/noticesearchrss.php:98 -#, fuzzy, php-format +#, php-format msgid "Updates matching search term \"%1$s\" on %2$s!" -msgstr "Todas as atualizações correspondentes ao termo \"%s\"" +msgstr "Mensagens correspondentes aos termos \"%1$s\" no %2$s!" #: actions/nudge.php:85 msgid "" @@ -2090,11 +2068,11 @@ msgstr "" #: actions/nudge.php:94 msgid "Nudge sent" -msgstr "Chamada de atenção enviada" +msgstr "A chamada de atenção foi enviada" #: actions/nudge.php:97 msgid "Nudge sent!" -msgstr "Chamada de atenção enviada!" +msgstr "A chamada de atenção foi enviada!" #: actions/oembed.php:79 actions/shownotice.php:100 msgid "Notice has no profile" @@ -2103,28 +2081,28 @@ msgstr "A mensagem não está associada a nenhum perfil" #: actions/oembed.php:86 actions/shownotice.php:180 #, php-format msgid "%1$s's status on %2$s" -msgstr "Mensagem de %1$s em %2$s" +msgstr "Mensagem de %1$s no %2$s" #: actions/oembed.php:157 msgid "content type " -msgstr "" +msgstr "tipo de conteúdo " #: actions/oembed.php:160 msgid "Only " -msgstr "" +msgstr "Apenas " #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1031 #: lib/api.php:1059 lib/api.php:1169 msgid "Not a supported data format." -msgstr "Formato de dados não suportado." +msgstr "Não é um formato de dados suportado." #: actions/opensearch.php:64 msgid "People Search" -msgstr "Procurar Pessoas" +msgstr "Procurar pessoas" #: actions/opensearch.php:67 msgid "Notice Search" -msgstr "Procurar mensagem" +msgstr "Procurar mensagens" #: actions/othersettings.php:60 msgid "Other Settings" @@ -2132,28 +2110,27 @@ msgstr "Outras configurações" #: actions/othersettings.php:71 msgid "Manage various other options." -msgstr "Gerenciar várias outras opções." +msgstr "Gerencia várias outras opções." #: actions/othersettings.php:108 msgid " (free service)" -msgstr "" +msgstr " (serviço livre)" #: actions/othersettings.php:116 msgid "Shorten URLs with" -msgstr "" +msgstr "Encolher URLs com" #: actions/othersettings.php:117 msgid "Automatic shortening service to use." msgstr "Serviço de encolhimento automático a ser utilizado." #: actions/othersettings.php:122 -#, fuzzy msgid "View profile designs" -msgstr "Configurações do perfil" +msgstr "Visualizar aparências do perfil" #: actions/othersettings.php:123 msgid "Show or hide profile designs." -msgstr "" +msgstr "Exibir ou esconder as aparências do perfil." #: actions/othersettings.php:153 msgid "URL shortening service is too long (max 50 chars)." @@ -2162,12 +2139,12 @@ msgstr "O serviço de encolhimento de URL é muito extenso (máx. 50 caracteres) #: actions/outbox.php:58 #, php-format msgid "Outbox for %s - page %d" -msgstr "Enviadas para %s - pág. %d" +msgstr "Enviadas de %s - pág. %d" #: actions/outbox.php:61 #, php-format msgid "Outbox for %s" -msgstr "Envidas para %s" +msgstr "Enviadas de %s" #: actions/outbox.php:116 msgid "This is your outbox, which lists private messages you have sent." @@ -2180,22 +2157,20 @@ msgid "Change password" msgstr "Alterar a senha" #: actions/passwordsettings.php:69 -#, fuzzy msgid "Change your password." -msgstr "Altera a sua senha" +msgstr "Altere a sua senha" #: actions/passwordsettings.php:96 actions/recoverpassword.php:231 -#, fuzzy msgid "Password change" -msgstr "A senha foi salva." +msgstr "Alterar a senha" #: actions/passwordsettings.php:104 msgid "Old password" -msgstr "Senha antiga" +msgstr "Senha anterior" #: actions/passwordsettings.php:108 actions/recoverpassword.php:235 msgid "New password" -msgstr "Nova senha" +msgstr "Senha nova" #: actions/passwordsettings.php:109 msgid "6 or more characters" @@ -2216,7 +2191,7 @@ msgstr "Alterar" #: actions/passwordsettings.php:154 actions/register.php:230 msgid "Password must be 6 or more characters." -msgstr "A senha deve ter 6 ou mais caracteres." +msgstr "A senha deve ter, no mÃnimo, 6 caracteres." #: actions/passwordsettings.php:157 actions/register.php:233 msgid "Passwords don't match." @@ -2224,7 +2199,7 @@ msgstr "As senhas não coincidem." #: actions/passwordsettings.php:165 msgid "Incorrect old password" -msgstr "A senha antiga está incorreta" +msgstr "A senha anterior está errada" #: actions/passwordsettings.php:181 msgid "Error saving user; invalid." @@ -2240,150 +2215,141 @@ msgstr "A senha foi salva." #: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:308 msgid "Paths" -msgstr "" +msgstr "Caminhos" #: actions/pathsadminpanel.php:70 msgid "Path and server settings for this StatusNet site." -msgstr "" +msgstr "Configurações dos caminhos e do servidor para este site StatusNet." #: actions/pathsadminpanel.php:140 -#, fuzzy, php-format +#, php-format msgid "Theme directory not readable: %s" -msgstr "Esta página não está disponÃvel em um " +msgstr "Sem permissão de leitura no diretório de temas: %s" #: actions/pathsadminpanel.php:146 #, php-format msgid "Avatar directory not writable: %s" -msgstr "" +msgstr "Sem permissão de escrita no diretório de avatares: %s" #: actions/pathsadminpanel.php:152 #, php-format msgid "Background directory not writable: %s" -msgstr "" +msgstr "Sem permissão de escrita no diretório de imagens de fundo: %s" #: actions/pathsadminpanel.php:160 #, php-format msgid "Locales directory not readable: %s" -msgstr "" +msgstr "Sem permissão de leitura no diretório de locales: %s" #: actions/pathsadminpanel.php:166 msgid "Invalid SSL server. The maximum length is 255 characters." msgstr "" +"Servidor SSL inválido. O comprimento máximo deve ser de 255 caracteres." #: actions/pathsadminpanel.php:217 actions/siteadminpanel.php:58 #: lib/adminpanelaction.php:299 -#, fuzzy msgid "Site" -msgstr "Convidar" +msgstr "Site" #: actions/pathsadminpanel.php:221 msgid "Path" -msgstr "" +msgstr "Caminho" #: actions/pathsadminpanel.php:221 -#, fuzzy msgid "Site path" -msgstr "Nova mensagem" +msgstr "Caminho do site" #: actions/pathsadminpanel.php:225 msgid "Path to locales" -msgstr "" +msgstr "Caminho para os locales" #: actions/pathsadminpanel.php:225 msgid "Directory path to locales" -msgstr "" +msgstr "Caminho do diretório de locales" #: actions/pathsadminpanel.php:232 msgid "Theme" -msgstr "" +msgstr "Tema" #: actions/pathsadminpanel.php:237 msgid "Theme server" -msgstr "" +msgstr "Servidor de temas" #: actions/pathsadminpanel.php:241 msgid "Theme path" -msgstr "" +msgstr "Caminho dos temas" #: actions/pathsadminpanel.php:245 msgid "Theme directory" -msgstr "" +msgstr "Diretório dos temas" #: actions/pathsadminpanel.php:252 -#, fuzzy msgid "Avatars" -msgstr "Avatar" +msgstr "Avatares" #: actions/pathsadminpanel.php:257 -#, fuzzy msgid "Avatar server" -msgstr "Configurações do avatar" +msgstr "Servidor de avatares" #: actions/pathsadminpanel.php:261 -#, fuzzy msgid "Avatar path" -msgstr "O avatar foi atualizado." +msgstr "Caminho dos avatares" #: actions/pathsadminpanel.php:265 -#, fuzzy msgid "Avatar directory" -msgstr "O avatar foi atualizado." +msgstr "Diretório dos avatares" #: actions/pathsadminpanel.php:274 msgid "Backgrounds" -msgstr "" +msgstr "Imagens de fundo" #: actions/pathsadminpanel.php:278 msgid "Background server" -msgstr "" +msgstr "Servidor de imagens de fundo" #: actions/pathsadminpanel.php:282 msgid "Background path" -msgstr "" +msgstr "Caminho das imagens de fundo" #: actions/pathsadminpanel.php:286 msgid "Background directory" -msgstr "" +msgstr "Diretório das imagens de fundo" #: actions/pathsadminpanel.php:293 -#, fuzzy msgid "SSL" -msgstr "SMS" +msgstr "SSL" #: actions/pathsadminpanel.php:296 actions/siteadminpanel.php:346 -#, fuzzy msgid "Never" -msgstr "Recuperar" +msgstr "Nunca" #: actions/pathsadminpanel.php:297 -#, fuzzy msgid "Sometimes" -msgstr "Mensagens" +msgstr "Algumas vezes" #: actions/pathsadminpanel.php:298 msgid "Always" -msgstr "" +msgstr "Sempre" #: actions/pathsadminpanel.php:302 msgid "Use SSL" -msgstr "" +msgstr "Usar SSL" #: actions/pathsadminpanel.php:303 msgid "When to use SSL" -msgstr "" +msgstr "Quando usar SSL" #: actions/pathsadminpanel.php:308 msgid "SSL Server" -msgstr "" +msgstr "Servidor SSL" #: actions/pathsadminpanel.php:309 msgid "Server to direct SSL requests to" -msgstr "" +msgstr "Servidor para onde devem ser direcionadas as requisições SSL" #: actions/pathsadminpanel.php:325 -#, fuzzy msgid "Save paths" -msgstr "Nova mensagem" +msgstr "Salvar caminhos" #: actions/peoplesearch.php:52 #, php-format @@ -2391,9 +2357,8 @@ msgid "" "Search for people on %%site.name%% by their name, location, or interests. " "Separate the terms by spaces; they must be 3 characters or more." msgstr "" -"Procurar por pessoas em %%site.name%% por seus nomes, localidade ou " -"interesses. Separe os termos da busca com espaços; eles devem ter 3 " -"caracteres ou mais." +"Procurar pessoas no %%site.name%% por seus nomes, localidade ou interesses. " +"Separe os termos da busca com espaços; eles devem ter 3 ou mais caracteres." #: actions/peoplesearch.php:58 msgid "People search" @@ -2417,6 +2382,7 @@ msgstr "O conteúdo da mensagem é inválido" #, php-format msgid "Notice license ‘%s’ is not compatible with site license ‘%s’." msgstr "" +"A licença ‘%s’ da mensagem não é compatÃvel com a licença ‘%s’ do site." #: actions/profilesettings.php:60 msgid "Profile settings" @@ -2430,9 +2396,8 @@ msgstr "" "saibam mais sobre você." #: actions/profilesettings.php:99 -#, fuzzy msgid "Profile information" -msgstr "Perfil desconhecido" +msgstr "Informações do perfil" #: actions/profilesettings.php:108 lib/groupeditform.php:154 msgid "1-64 lowercase letters or numbers, no punctuation or spaces" @@ -2454,14 +2419,13 @@ msgid "URL of your homepage, blog, or profile on another site" msgstr "URL do seu site, blog ou perfil em outro site" #: actions/profilesettings.php:122 actions/register.php:460 -#, fuzzy, php-format +#, php-format msgid "Describe yourself and your interests in %d chars" -msgstr "Descreva a si mesmo e seus interesses em 140 caracteres." +msgstr "Descreva a si mesmo e os seus interesses em %d caracteres" #: actions/profilesettings.php:125 actions/register.php:463 -#, fuzzy msgid "Describe yourself and your interests" -msgstr "Descreva a si mesmo e seus interesses em 140 caracteres." +msgstr "Descreva a si mesmo e os seus interesses" #: actions/profilesettings.php:127 actions/register.php:465 msgid "Bio" @@ -2478,106 +2442,112 @@ msgstr "Localização" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Onde você está, ex: \"cidade, estado (ou região), paÃs\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "Compartilhe minha localização atual ao publicar mensagens" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" -msgstr "Tags" +msgstr "Etiquetas" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Suas etiquetas (letras, números, -, ., e _), separadas por vÃrgulas ou " "espaços" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Idioma" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Idioma preferencial" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Fuso horário" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Em que fuso horário você normalmente está?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" -msgstr "Assinar automaticamente à quem me assinar" +msgstr "" +"Assinar automaticamente à quem me assinar (melhor para perfis não humanos)" -#: actions/profilesettings.php:221 actions/register.php:223 -#, fuzzy, php-format +#: actions/profilesettings.php:228 actions/register.php:223 +#, php-format msgid "Bio is too long (max %d chars)." -msgstr "Descrição muito extensa (máximo 140 caracteres)." +msgstr "A descrição é muito extensa (máximo %d caracteres)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "O fuso horário não foi selecionado." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "O nome do idioma é muito extenso (máx. 50 caracteres)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Etiqueta inválida: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Não foi possÃvel atualizar o usuário para assinar automaticamente." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Não foi possÃvel salvar as preferências de localização." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Não foi possÃvel salvar o perfil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Não foi possÃvel salvar as etiquetas." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "As configurações foram salvas." #: actions/public.php:83 #, php-format msgid "Beyond the page limit (%s)" -msgstr "" +msgstr "Além do limite da página (%s)" #: actions/public.php:92 msgid "Could not retrieve public stream." msgstr "Não foi possÃvel recuperar o fluxo público." #: actions/public.php:129 -#, fuzzy, php-format +#, php-format msgid "Public timeline, page %d" -msgstr "Mensagens públicas" +msgstr "Mensagens públicas, pág. %d" #: actions/public.php:131 lib/publicgroupnav.php:79 msgid "Public timeline" msgstr "Mensagens públicas" #: actions/public.php:151 -#, fuzzy msgid "Public Stream Feed (RSS 1.0)" -msgstr "Feed de mensagens públicas" +msgstr "Fonte de mensagens públicas (RSS 1.0)" #: actions/public.php:155 -#, fuzzy msgid "Public Stream Feed (RSS 2.0)" -msgstr "Feed de mensagens públicas" +msgstr "Fonte de mensagens públicas (RSS 2.0)" #: actions/public.php:159 -#, fuzzy msgid "Public Stream Feed (Atom)" -msgstr "Feed de mensagens públicas" +msgstr "Fonte de mensagens públicas (Atom)" #: actions/public.php:179 #, php-format @@ -2585,16 +2555,20 @@ msgid "" "This is the public timeline for %%site.name%% but no one has posted anything " "yet." msgstr "" +"Esse é o fluxo de mensagens públicas de %%site.name%%, mas ninguém publicou " +"nada ainda." #: actions/public.php:182 msgid "Be the first to post!" -msgstr "" +msgstr "Seja o primeiro a publicar!" #: actions/public.php:186 #, php-format msgid "" "Why not [register an account](%%action.register%%) and be the first to post!" msgstr "" +"Por que você não [registra uma conta](%%action.register%%) pra ser o " +"primeiro a publicar?" #: actions/public.php:233 #, php-format @@ -2604,35 +2578,39 @@ msgid "" "tool. [Join now](%%action.register%%) to share notices about yourself with " "friends, family, and colleagues! ([Read more](%%doc.help%%))" msgstr "" +"Este é %%site.name%%, um serviço de [microblog](http://pt.wikipedia.org/wiki/" +"Microblogging) baseado no software livre [StatusNet](http://status.net/). " +"[Cadastre-se agora](%%action.register%%) para compartilhar notÃcias sobre " +"você com seus amigos, famÃlia e colegas! ([Saiba mais](%%doc.help%%))" #: actions/public.php:238 -#, fuzzy, php-format +#, php-format msgid "" "This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-" "blogging) service based on the Free Software [StatusNet](http://status.net/) " "tool." msgstr "" -"Este é %%site.name%%, um serviço de [micro-blogging](http://pt.wikipedia.org/" -"wiki/Microblogging)" +"Este é %%site.name%%, um serviço de [microblog](http://pt.wikipedia.org/wiki/" +"Microblogging) baseado no software livre [StatusNet](http://status.net/)." #: actions/publictagcloud.php:57 -#, fuzzy msgid "Public tag cloud" -msgstr "Fluxo de mensagens públicas" +msgstr "Nuvem de etiquetas públicas" #: actions/publictagcloud.php:63 #, php-format msgid "These are most popular recent tags on %s " -msgstr "" +msgstr "Estas são as etiquetas recentes mais populares no %s " #: actions/publictagcloud.php:69 #, php-format msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet." msgstr "" +"Ninguém publicou nenhuma mensagem com a [etiqueta](%%doc.tags%%) ainda." #: actions/publictagcloud.php:72 msgid "Be the first to post one!" -msgstr "" +msgstr "Seja o primeiro a publicar uma!" #: actions/publictagcloud.php:75 #, php-format @@ -2640,14 +2618,16 @@ msgid "" "Why not [register an account](%%action.register%%) and be the first to post " "one!" msgstr "" +"Por que você não [registra uma conta](%%action.register%%) pra ser o " +"primeiro a publicar?" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" -msgstr "" +msgstr "Nuvem de etiquetas" #: actions/recoverpassword.php:36 msgid "You are already logged in!" -msgstr "Você já está logado!" +msgstr "Você já está autenticado!" #: actions/recoverpassword.php:62 msgid "No such recovery code." @@ -2679,22 +2659,24 @@ msgid "" "If you have forgotten or lost your password, you can get a new one sent to " "the email address you have stored in your account." msgstr "" +"Se você esqueceu ou perdeu a sua senha, você pode receber uma nova no " +"endereço de e-mail que cadastrou na sua conta." #: actions/recoverpassword.php:158 msgid "You have been identified. Enter a new password below. " -msgstr "" +msgstr "Você foi identificado. Digite uma nova senha abaixo. " #: actions/recoverpassword.php:188 msgid "Password recovery" -msgstr "" +msgstr "Recuperação de senha" #: actions/recoverpassword.php:191 msgid "Nickname or email address" -msgstr "" +msgstr "Identificação ou endereço de e-mail" #: actions/recoverpassword.php:193 msgid "Your nickname on this server, or your registered email address." -msgstr "Seu apelido neste servidor, ou seu e-mail registrado." +msgstr "Sua identificação neste servidor, ou seu e-mail cadastrado." #: actions/recoverpassword.php:199 actions/recoverpassword.php:200 msgid "Recover" @@ -2726,7 +2708,7 @@ msgstr "Restaurar" #: actions/recoverpassword.php:252 msgid "Enter a nickname or email address." -msgstr "Entre com o apelido ou endereço de e-mail." +msgstr "Digite a identificação ou endereço de e-mail." #: actions/recoverpassword.php:272 msgid "No user with that email address or username." @@ -2740,7 +2722,7 @@ msgstr "Nenhum endereço de e-mail registrado para esse usuário." #: actions/recoverpassword.php:301 msgid "Error saving address confirmation." -msgstr "Erro ao salvar o endereço de confirmação" +msgstr "Erro ao salvar o endereço de confirmação." #: actions/recoverpassword.php:325 msgid "" @@ -2756,7 +2738,7 @@ msgstr "Restauração inesperada da senha." #: actions/recoverpassword.php:352 msgid "Password must be 6 chars or more." -msgstr "A senha deve ter 6 caracteres ou mais." +msgstr "A senha deve ter 6 ou mais caracteres." #: actions/recoverpassword.php:356 msgid "Password and confirmation do not match." @@ -2769,25 +2751,25 @@ msgstr "Erro na configuração do usuário." #: actions/recoverpassword.php:382 msgid "New password successfully saved. You are now logged in." msgstr "" -"A nova senha foi salva com sucesso. A partir de agora você já está logado." +"A nova senha foi salva com sucesso. A partir de agora você já está " +"autenticado." #: actions/register.php:85 actions/register.php:189 actions/register.php:404 msgid "Sorry, only invited people can register." -msgstr "Desculpe, somente convidados podem se registrar." +msgstr "Desculpe, mas somente convidados podem se registrar." #: actions/register.php:92 -#, fuzzy msgid "Sorry, invalid invitation code." -msgstr "Erro com o código de confirmação." +msgstr "Desculpe, mas o código do convite é inválido." #: actions/register.php:112 msgid "Registration successful" msgstr "Registro realizado com sucesso" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" -msgstr "Registrar" +msgstr "Registrar-se" #: actions/register.php:135 msgid "Registration not allowed." @@ -2814,6 +2796,8 @@ msgid "" "With this form you can create a new account. You can then post notices and " "link up to friends and colleagues. " msgstr "" +"Através deste formulário você pode criar uma nova conta. A partir daà você " +"pode publicar mensagens e se conectar a amigos e colegas. " #: actions/register.php:424 msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required." @@ -2839,7 +2823,7 @@ msgstr "Usado apenas para atualizações, anúncios e recuperações de senha" #: actions/register.php:449 msgid "Longer name, preferably your \"real\" name" -msgstr "Nome completo (nome e sobrenome), de preferência seu nome \"real\"" +msgstr "Nome completo, de preferência seu nome \"real\"" #: actions/register.php:493 msgid "My text and files are available under " @@ -2847,16 +2831,15 @@ msgstr "Meus textos e arquivos estão disponÃveis sob " #: actions/register.php:495 msgid "Creative Commons Attribution 3.0" -msgstr "" +msgstr "Creative Commons Attribution 3.0" #: actions/register.php:496 -#, fuzzy msgid "" " except this private data: password, email address, IM address, and phone " "number." msgstr "" -" exceto estes dados privados: senha, endereço de e-mail, endereço de IM, " -"número de telefone." +" exceto estes dados particulares: senha, endereço de e-mail, endereço de MI " +"e número de telefone." #: actions/register.php:537 #, php-format @@ -2876,14 +2859,14 @@ msgid "" "\n" "Thanks for signing up and we hope you enjoy using this service." msgstr "" -"Parabéns, %s! E bem-vindo(a) ao %%%%site.name%%%%. A partir daqui, você pode " -"querer...\n" +"Parabéns, %s! E bem-vindo(a) a %%%%site.name%%%%. A partir daqui, você " +"pode...\n" "\n" "* Acessar [seu perfil](%s) e publicar sua primeira mensagem.\n" "* Adicionar um [endereço de Jabber/GTalk](%%%%action.imsettings%%%%) para " "que você possa publicar via mensagens instantâneas.\n" -"* [Procurar por pessoas](%%%%action.peoplesearch%%%%) que você conheça ou " -"que tenham os mesmos interesses que você. \n" +"* [Procurar pessoas](%%%%action.peoplesearch%%%%) que você conheça ou que " +"tenham os mesmos interesses que você. \n" "* Atualizar suas [configurações de perfil](%%%%action.profilesettings%%%%) " "para que outras pessoas saibam mais sobre você. \n" "* Ler a [documentação on-line](%%%%doc.help%%%%) para conhecer os recursos " @@ -2908,7 +2891,7 @@ msgid "" msgstr "" "Para assinar, você pode [autenticar-se](%%action.login%%), ou [registrar](%%" "action.register%%) uma nova conta. Se você já tem uma conta em um [site de " -"microblogagem compatÃvel](%%doc.openmublog%%), informe a URL do seu perfil " +"microblog compatÃvel](%%doc.openmublog%%), informe a URL do seu perfil " "abaixo." #: actions/remotesubscribe.php:112 @@ -2916,25 +2899,24 @@ msgid "Remote subscribe" msgstr "Assinatura remota" #: actions/remotesubscribe.php:124 -#, fuzzy msgid "Subscribe to a remote user" -msgstr "Assinar este usuário" +msgstr "Assinar um usuário remoto" #: actions/remotesubscribe.php:129 msgid "User nickname" -msgstr "Apelido do usuário" +msgstr "Identificação do usuário" #: actions/remotesubscribe.php:130 msgid "Nickname of the user you want to follow" -msgstr "Apelido do usuário que você quer seguir" +msgstr "Identificação do usuário que você quer seguir" #: actions/remotesubscribe.php:133 msgid "Profile URL" -msgstr "URL do Perfil" +msgstr "URL do perfil" #: actions/remotesubscribe.php:134 msgid "URL of your profile on another compatible microblogging service" -msgstr "URL do seu perfil em outro serviço de microblogagem compatÃvel" +msgstr "URL do seu perfil em outro serviço de microblog compatÃvel" #: actions/remotesubscribe.php:137 lib/subscribeform.php:139 #: lib/userprofile.php:365 @@ -2946,49 +2928,41 @@ msgid "Invalid profile URL (bad format)" msgstr "A URL do perfil é inválida (formato inválido)" #: actions/remotesubscribe.php:168 -#, fuzzy msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)." -msgstr "Não é uma URL de perfil válida (nenhum documento YADIS)." +msgstr "" +"Não é uma URL de perfil válida (nenhum documento YADIS ou XRDS inválido)." #: actions/remotesubscribe.php:176 -#, fuzzy msgid "That’s a local profile! Login to subscribe." msgstr "Esse é um perfil local! Autentique-se para assinar." #: actions/remotesubscribe.php:183 -#, fuzzy msgid "Couldn’t get a request token." msgstr "Não foi possÃvel obter um token de requisição." #: actions/repeat.php:57 -#, fuzzy msgid "Only logged-in users can repeat notices." -msgstr "As caixas postais são legÃveis somente pelo seu próprio usuário." +msgstr "Apenas usuários autenticados podem repetir mensagens." #: actions/repeat.php:64 actions/repeat.php:71 -#, fuzzy msgid "No notice specified." -msgstr "Não foi especificado nenhum perfil." +msgstr "Não foi especificada nenhuma mensagem." #: actions/repeat.php:76 -#, fuzzy msgid "You can't repeat your own notice." -msgstr "Você não pode se registrar se não aceitar a licença." +msgstr "Você não pode repetir sua própria mensagem." #: actions/repeat.php:90 -#, fuzzy msgid "You already repeated that notice." -msgstr "Você já bloqueou esse usuário." +msgstr "Você já repetiu essa mensagem." -#: actions/repeat.php:114 lib/noticelist.php:621 -#, fuzzy +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" -msgstr "Criar" +msgstr "Repetida" #: actions/repeat.php:119 -#, fuzzy msgid "Repeated!" -msgstr "Criar" +msgstr "Repetida!" #: actions/replies.php:125 actions/repliesrss.php:68 #: lib/personalgroupnav.php:105 @@ -2997,24 +2971,24 @@ msgid "Replies to %s" msgstr "Respostas para %s" #: actions/replies.php:127 -#, fuzzy, php-format +#, php-format msgid "Replies to %s, page %d" -msgstr "Respostas para %s" +msgstr "Respostas para %s, pag. %d" #: actions/replies.php:144 #, php-format msgid "Replies feed for %s (RSS 1.0)" -msgstr "" +msgstr "Fonte de respostas para %s (RSS 1.0)" #: actions/replies.php:151 #, php-format msgid "Replies feed for %s (RSS 2.0)" -msgstr "" +msgstr "Fonte de respostas para %s (RSS 2.0)" #: actions/replies.php:158 -#, fuzzy, php-format +#, php-format msgid "Replies feed for %s (Atom)" -msgstr "Mensagens de %s" +msgstr "Fonte de respostas para %s (Atom)" #: actions/replies.php:198 #, php-format @@ -3022,6 +2996,8 @@ msgid "" "This is the timeline showing replies to %s but %s hasn't received a notice " "to his attention yet." msgstr "" +"Esse é o fluxo de mensagens de resposta para %s, mas %s ainda não recebeu " +"nenhuma mensagem direcionada a ele(a)." #: actions/replies.php:203 #, php-format @@ -3029,6 +3005,8 @@ msgid "" "You can engage other users in a conversation, subscribe to more people or " "[join groups](%%action.groups%%)." msgstr "" +"Você pode envolver outros usuários na conversa. Pra isso, assine mais " +"pessoas ou [associe-se a grupos](%%action.groups%%)." #: actions/replies.php:205 #, php-format @@ -3036,51 +3014,54 @@ msgid "" "You can try to [nudge %s](../%s) or [post something to his or her attention]" "(%%%%action.newnotice%%%%?status_textarea=%s)." msgstr "" +"Você pode tentar [chamar a atenção de %s](../%s) ou [publicar alguma coisa " +"que desperte seu interesse](%%%%action.newnotice%%%%?status_textarea=%s)." #: actions/repliesrss.php:72 -#, fuzzy, php-format +#, php-format msgid "Replies to %1$s on %2$s!" -msgstr "Mensagem para %1$s no %2$s" +msgstr "Respostas para %1$s no %2$s" #: actions/sandbox.php:65 actions/unsandbox.php:65 -#, fuzzy msgid "You cannot sandbox users on this site." -msgstr "Você não pode enviar uma mensagem para esse usuário." +msgstr "Você não pode colocar usuários deste site em isolamento." #: actions/sandbox.php:72 -#, fuzzy msgid "User is already sandboxed." -msgstr "O usuário bloqueou você." +msgstr "O usuário já está em isolamento." #: actions/showfavorites.php:79 -#, fuzzy, php-format +#, php-format msgid "%s's favorite notices, page %d" -msgstr "Mensagens favoritas de %s" +msgstr "Mensagens favoritas de %s, pág. %d" #: actions/showfavorites.php:132 msgid "Could not retrieve favorite notices." msgstr "Não foi possÃvel recuperar as mensagens favoritas." #: actions/showfavorites.php:170 -#, fuzzy, php-format +#, php-format msgid "Feed for favorites of %s (RSS 1.0)" -msgstr "Feed para favoritas de %s" +msgstr "Fonte para favoritas de %s (RSS 1.0)" #: actions/showfavorites.php:177 -#, fuzzy, php-format +#, php-format msgid "Feed for favorites of %s (RSS 2.0)" -msgstr "Feed para favoritas de %s" +msgstr "Fonte para favoritas de %s (RSS 2.0)" #: actions/showfavorites.php:184 -#, fuzzy, php-format +#, php-format msgid "Feed for favorites of %s (Atom)" -msgstr "Feed para favoritas de %s" +msgstr "Fonte para favoritas de %s (Atom)" #: actions/showfavorites.php:205 msgid "" "You haven't chosen any favorite notices yet. Click the fave button on " "notices you like to bookmark them for later or shed a spotlight on them." msgstr "" +"Você ainda não marcou nenhuma mensagem como favorita. Clique no botão " +"\"Favorita\" nas mensagens que você quer guardar para referência futura ou " +"para destacar." #: actions/showfavorites.php:207 #, php-format @@ -3088,6 +3069,8 @@ msgid "" "%s hasn't added any notices to his favorites yet. Post something interesting " "they would add to their favorites :)" msgstr "" +"%s não adicionou nenhuma mensagem à s suas favoritas. Publique alguma coisa " +"interessante para para as pessoas marcarem como favorita. :)" #: actions/showfavorites.php:211 #, php-format @@ -3096,90 +3079,87 @@ msgid "" "account](%%%%action.register%%%%) and then post something interesting they " "would add to their favorites :)" msgstr "" +"%s não adicionou nenhuma mensagem à s suas favoritas. Por que você não " +"[registra uma conta](%%%%action.register%%%%) e publica alguma coisa " +"interessante para as pessoas marcarem como favorita? :)" #: actions/showfavorites.php:242 msgid "This is a way to share what you like." -msgstr "" +msgstr "Esta é uma forma de compartilhar o que você gosta." #: actions/showgroup.php:82 lib/groupnav.php:86 #, php-format msgid "%s group" -msgstr "" +msgstr "Grupo %s" #: actions/showgroup.php:84 #, php-format msgid "%s group, page %d" -msgstr "" +msgstr "Grupo %s, pág. %d" #: actions/showgroup.php:218 -#, fuzzy msgid "Group profile" -msgstr "Esse perfil não existe." +msgstr "Perfil do grupo" #: actions/showgroup.php:263 actions/tagother.php:118 #: actions/userauthorization.php:167 lib/userprofile.php:177 msgid "URL" -msgstr "" +msgstr "Site" #: actions/showgroup.php:274 actions/tagother.php:128 #: actions/userauthorization.php:179 lib/userprofile.php:194 -#, fuzzy msgid "Note" -msgstr "Mensagens" +msgstr "Mensagem" #: actions/showgroup.php:284 lib/groupeditform.php:184 msgid "Aliases" -msgstr "" +msgstr "Apelidos" #: actions/showgroup.php:293 -#, fuzzy msgid "Group actions" -msgstr "Outras opções" +msgstr "Ações do grupo" #: actions/showgroup.php:328 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s group (RSS 1.0)" -msgstr "Mensagens de %s" +msgstr "Fonte de mensagens do grupo %s (RSS 1.0)" #: actions/showgroup.php:334 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s group (RSS 2.0)" -msgstr "Mensagens de %s" +msgstr "Fonte de mensagens do grupo %s (RSS 2.0)" #: actions/showgroup.php:340 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s group (Atom)" -msgstr "Mensagens de %s" +msgstr "Fonte de mensagens do grupo %s (Atom)" #: actions/showgroup.php:345 -#, fuzzy, php-format +#, php-format msgid "FOAF for %s group" -msgstr "Mensagens de %s" +msgstr "FOAF para o grupo %s" #: actions/showgroup.php:381 actions/showgroup.php:438 lib/groupnav.php:91 -#, fuzzy msgid "Members" -msgstr "Membro desde" +msgstr "Membros" #: actions/showgroup.php:386 lib/profileaction.php:117 #: lib/profileaction.php:148 lib/profileaction.php:236 lib/section.php:95 #: lib/tagcloudsection.php:71 -#, fuzzy msgid "(None)" -msgstr "(nenhum)" +msgstr "(Nenhum)" #: actions/showgroup.php:392 msgid "All members" -msgstr "" +msgstr "Todos os membros" #: actions/showgroup.php:429 lib/profileaction.php:174 msgid "Statistics" msgstr "EstatÃsticas" #: actions/showgroup.php:432 -#, fuzzy msgid "Created" -msgstr "Criar" +msgstr "Criado" #: actions/showgroup.php:448 #, php-format @@ -3190,22 +3170,29 @@ msgid "" "their life and interests. [Join now](%%%%action.register%%%%) to become part " "of this group and many more! ([Read more](%%%%doc.help%%%%))" msgstr "" +"**%s** é usuário de um grupo no %%%%site.name%%%%, um serviço de [microblog]" +"(http://pt.wikipedia.org/wiki/Micro-blogging) baseado no software livre " +"[StatusNet](http://status.net/). Seus membros compartilham mensagens curtas " +"sobre suas vidas e interesses. [Associe-se agora](%%%%action.register%%%%) " +"para se tornar parte deste grupo e muito mais! ([Saiba mais](%%%%doc.help%%%" +"%))" #: actions/showgroup.php:454 -#, fuzzy, php-format +#, php-format msgid "" "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en." "wikipedia.org/wiki/Micro-blogging) service based on the Free Software " "[StatusNet](http://status.net/) tool. Its members share short messages about " "their life and interests. " msgstr "" -"Este é %%site.name%%, um serviço de [micro-blogging](http://pt.wikipedia.org/" -"wiki/Microblogging)" +"**%s** é usuário de um grupo no %%%%site.name%%%%, um serviço de [microblog]" +"(http://pt.wikipedia.org/wiki/Micro-blogging) baseado no software livre " +"[StatusNet](http://status.net/). Seus membros compartilham mensagens curtas " +"sobre suas vidas e interesses. " #: actions/showgroup.php:482 -#, fuzzy msgid "Admins" -msgstr "Admin" +msgstr "Administradores" #: actions/showmessage.php:81 msgid "No such message." @@ -3213,7 +3200,7 @@ msgstr "Essa mensagem não existe." #: actions/showmessage.php:98 msgid "Only the sender and recipient may read this message." -msgstr "Apenas o remetente e o destinatário podem ler essa mensagem." +msgstr "Apenas o remetente e o destinatário podem ler esta mensagem." #: actions/showmessage.php:108 #, php-format @@ -3226,55 +3213,57 @@ msgid "Message from %1$s on %2$s" msgstr "Mensagem de %1$s no %2$s" #: actions/shownotice.php:90 -#, fuzzy msgid "Notice deleted." -msgstr "Mensagem publicada" +msgstr "A mensagem excluÃda." #: actions/showstream.php:73 -#, fuzzy, php-format +#, php-format msgid " tagged %s" -msgstr "Mensagens etiquetadas com %s" +msgstr " etiquetada %s" #: actions/showstream.php:79 -#, fuzzy, php-format +#, php-format msgid "%s, page %d" -msgstr "Recebidas por %s - pág. %d" +msgstr "%s, pág. %d" #: actions/showstream.php:122 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s tagged %s (RSS 1.0)" -msgstr "Mensagens de %s" +msgstr "Fonte de mensagens de %s etiquetada %s (RSS 1.0)" #: actions/showstream.php:129 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s (RSS 1.0)" -msgstr "Feed de mensagens de %s" +msgstr "Fonte de mensagens de %s (RSS 1.0)" #: actions/showstream.php:136 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s (RSS 2.0)" -msgstr "Feed de mensagens de %s" +msgstr "Fonte de mensagens de %s (RSS 2.0)" #: actions/showstream.php:143 -#, fuzzy, php-format +#, php-format msgid "Notice feed for %s (Atom)" -msgstr "Feed de mensagens de %s" +msgstr "Fonte de mensagens de %s (Atom)" #: actions/showstream.php:148 -#, fuzzy, php-format +#, php-format msgid "FOAF for %s" -msgstr "Envidas para %s" +msgstr "FOAF de %s" #: actions/showstream.php:191 #, php-format msgid "This is the timeline for %s but %s hasn't posted anything yet." msgstr "" +"Este é o fluxo público de mensagens de %s, mas %s não publicou nada ainda." #: actions/showstream.php:196 msgid "" "Seen anything interesting recently? You haven't posted any notices yet, now " "would be a good time to start :)" msgstr "" +"Viu alguma coisa interessante recentemente? Você ainda não publicou nenhuma " +"mensagem. Que tal começar agora? :)" #: actions/showstream.php:198 #, php-format @@ -3282,6 +3271,8 @@ msgid "" "You can try to nudge %s or [post something to his or her attention](%%%%" "action.newnotice%%%%?status_textarea=%s)." msgstr "" +"Você pode tentar chamar a atenção de %s ou [publicar alguma coisa que " +"desperte seu interesse](%%%%action.newnotice%%%%?status_textarea=%s)." #: actions/showstream.php:234 #, php-format @@ -3291,235 +3282,230 @@ msgid "" "[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to " "follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))" msgstr "" +"**%s** tem uma conta no %%%%site.name%%%%, um serviço de [microblog](http://" +"pt.wikipedia.org/wiki/Micro-blogging) baseado no software livre [StatusNet]" +"(http://status.net/). [Cadastre-se agora](%%%%action.register%%%%) para " +"acompanhar as mensagens de **%s** e muito mais! ([Saiba mais](%%%%doc.help%%%" +"%))" #: actions/showstream.php:239 -#, fuzzy, php-format +#, php-format msgid "" "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en." "wikipedia.org/wiki/Micro-blogging) service based on the Free Software " "[StatusNet](http://status.net/) tool. " msgstr "" -"Este é %%site.name%%, um serviço de [micro-blogging](http://pt.wikipedia.org/" -"wiki/Microblogging)" +"**%s** tem uma conta no %%%%site.name%%%%, um serviço de [microblog](http://" +"pt.wikipedia.org/wiki/Micro-blogging) baseado no software livre [StatusNet]" +"(http://status.net/). " #: actions/showstream.php:313 -#, fuzzy, php-format +#, php-format msgid "Repeat of %s" -msgstr "Respostas para %s" +msgstr "Repetição de %s" #: actions/silence.php:65 actions/unsilence.php:65 -#, fuzzy msgid "You cannot silence users on this site." -msgstr "Você não pode enviar uma mensagem para esse usuário." +msgstr "Você não pode silenciar os usuários neste site." #: actions/silence.php:72 -#, fuzzy msgid "User is already silenced." -msgstr "O usuário bloqueou você." +msgstr "O usuário já está silenciado." #: actions/siteadminpanel.php:69 msgid "Basic settings for this StatusNet site." -msgstr "" +msgstr "Configurações básicas para esta instância do StatusNet." #: actions/siteadminpanel.php:146 msgid "Site name must have non-zero length." -msgstr "" +msgstr "Você deve digitar alguma coisa para o nome do site." #: actions/siteadminpanel.php:154 -#, fuzzy msgid "You must have a valid contact email address" -msgstr "Não é um endereço de e-mail válido" +msgstr "Você deve ter um endereço de e-mail para contato válido." #: actions/siteadminpanel.php:172 #, php-format msgid "Unknown language \"%s\"" -msgstr "" +msgstr "Idioma desconhecido \"%s\"" #: actions/siteadminpanel.php:179 msgid "Invalid snapshot report URL." -msgstr "" +msgstr "A URL para o envio das estatÃsticas é inválida." #: actions/siteadminpanel.php:185 msgid "Invalid snapshot run value." -msgstr "" +msgstr "O valor de execução da obtenção das estatÃsticas é inválido." #: actions/siteadminpanel.php:191 msgid "Snapshot frequency must be a number." -msgstr "" +msgstr "A frequência de geração de estatÃsticas deve ser um número." #: actions/siteadminpanel.php:197 msgid "Minimum text limit is 140 characters." -msgstr "" +msgstr "O comprimento máximo do texto é de 140 caracteres." #: actions/siteadminpanel.php:203 msgid "Dupe limit must 1 or more seconds." -msgstr "" +msgstr "O limite de duplicatas deve ser de um ou mais segundos." #: actions/siteadminpanel.php:253 msgid "General" -msgstr "" +msgstr "Geral" #: actions/siteadminpanel.php:256 -#, fuzzy msgid "Site name" -msgstr "Nova mensagem" +msgstr "Nome do site" #: actions/siteadminpanel.php:257 msgid "The name of your site, like \"Yourcompany Microblog\"" -msgstr "" +msgstr "O nome do seu site, por exemplo \"Microblog da Sua Empresa\"" #: actions/siteadminpanel.php:261 msgid "Brought by" -msgstr "" +msgstr "Disponibilizado por" #: actions/siteadminpanel.php:262 msgid "Text used for credits link in footer of each page" -msgstr "" +msgstr "Texto utilizado para o link de créditos no rodapé de cada página" #: actions/siteadminpanel.php:266 msgid "Brought by URL" -msgstr "" +msgstr "URL do disponibilizado por" #: actions/siteadminpanel.php:267 msgid "URL used for credits link in footer of each page" -msgstr "" +msgstr "URL utilizada para o link de créditos no rodapé de cada página" #: actions/siteadminpanel.php:271 -#, fuzzy msgid "Contact email address for your site" -msgstr "Novo endereço de e-mail para postar para %s" +msgstr "Endereço de e-mail para contatos do seu site" #: actions/siteadminpanel.php:277 -#, fuzzy msgid "Local" -msgstr "Localização" +msgstr "Local" #: actions/siteadminpanel.php:288 msgid "Default timezone" -msgstr "" +msgstr "Fuso horário padrão" #: actions/siteadminpanel.php:289 msgid "Default timezone for the site; usually UTC." -msgstr "" +msgstr "Fuso horário padrão para o seu site; geralmente UTC." #: actions/siteadminpanel.php:295 -#, fuzzy msgid "Default site language" -msgstr "Idioma preferencial" +msgstr "Idioma padrão do site" #: actions/siteadminpanel.php:303 msgid "URLs" -msgstr "" +msgstr "URLs" #: actions/siteadminpanel.php:306 -#, fuzzy msgid "Server" -msgstr "Recuperar" +msgstr "Servidor" #: actions/siteadminpanel.php:306 msgid "Site's server hostname." -msgstr "" +msgstr "Nome de host do servidor do site." #: actions/siteadminpanel.php:310 msgid "Fancy URLs" -msgstr "" +msgstr "URLs limpas" #: actions/siteadminpanel.php:312 msgid "Use fancy (more readable and memorable) URLs?" -msgstr "" +msgstr "Utilizar URLs limpas (mais legÃveis e memorizáveis)?" #: actions/siteadminpanel.php:318 -#, fuzzy msgid "Access" -msgstr "Aceitar" +msgstr "Acesso" #: actions/siteadminpanel.php:321 -#, fuzzy msgid "Private" -msgstr "Privacidade" +msgstr "Particular" #: actions/siteadminpanel.php:323 msgid "Prohibit anonymous users (not logged in) from viewing site?" -msgstr "" +msgstr "Impedir usuários anônimos (não autenticados) de visualizar o site?" #: actions/siteadminpanel.php:327 -#, fuzzy msgid "Invite only" -msgstr "Convidar" +msgstr "Somente convidados" #: actions/siteadminpanel.php:329 msgid "Make registration invitation only." -msgstr "" +msgstr "Cadastro liberado somente para convidados." #: actions/siteadminpanel.php:333 -#, fuzzy msgid "Closed" -msgstr "Bloquear" +msgstr "Fechado" #: actions/siteadminpanel.php:335 msgid "Disable new registrations." -msgstr "" +msgstr "Desabilita novos registros." #: actions/siteadminpanel.php:341 msgid "Snapshots" -msgstr "" +msgstr "EstatÃsticas" #: actions/siteadminpanel.php:344 msgid "Randomly during Web hit" -msgstr "" +msgstr "Aleatoriamente durante o funcionamento" #: actions/siteadminpanel.php:345 msgid "In a scheduled job" -msgstr "" +msgstr "Em horários pré-definidos" #: actions/siteadminpanel.php:347 msgid "Data snapshots" -msgstr "" +msgstr "EstatÃsticas dos dados" #: actions/siteadminpanel.php:348 msgid "When to send statistical data to status.net servers" -msgstr "" +msgstr "Quando enviar dados estatÃsticos para os servidores status.net" #: actions/siteadminpanel.php:353 msgid "Frequency" -msgstr "" +msgstr "Frequentemente" #: actions/siteadminpanel.php:354 msgid "Snapshots will be sent once every N web hits" -msgstr "" +msgstr "As estatÃsticas serão enviadas uma vez a cada N usos da web" #: actions/siteadminpanel.php:359 msgid "Report URL" -msgstr "" +msgstr "URL para envio" #: actions/siteadminpanel.php:360 msgid "Snapshots will be sent to this URL" -msgstr "" +msgstr "As estatÃsticas serão enviadas para esta URL" #: actions/siteadminpanel.php:367 msgid "Limits" -msgstr "" +msgstr "Limites" #: actions/siteadminpanel.php:370 msgid "Text limit" -msgstr "" +msgstr "Limite do texto" #: actions/siteadminpanel.php:370 msgid "Maximum number of characters for notices." -msgstr "" +msgstr "Número máximo de caracteres para as mensagens." #: actions/siteadminpanel.php:374 msgid "Dupe limit" -msgstr "" +msgstr "Limite de duplicatas" #: actions/siteadminpanel.php:374 msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +"Quanto tempo (em segundos) os usuários devem esperar para publicar a mesma " +"coisa novamente." #: actions/siteadminpanel.php:388 actions/useradminpanel.php:313 -#, fuzzy msgid "Save site settings" -msgstr "Configurações do avatar" +msgstr "Salvar as configurações do site" #: actions/smssettings.php:58 msgid "SMS Settings" @@ -3528,12 +3514,11 @@ msgstr "Configuração de SMS" #: actions/smssettings.php:69 #, php-format msgid "You can receive SMS messages through email from %%site.name%%." -msgstr "Você pode receber mensagens SMS do %%site.name%% através do e-mail." +msgstr "Você pode receber mensagens SMS de %%site.name%% através do e-mail." #: actions/smssettings.php:91 -#, fuzzy msgid "SMS is not available." -msgstr "Esta página não está disponÃvel em um " +msgstr "SMS não está disponÃvel." #: actions/smssettings.php:112 msgid "Current confirmed SMS-enabled phone number." @@ -3584,14 +3569,12 @@ msgid "That phone number already belongs to another user." msgstr "Esse número de telefone já pertence à outro usuário." #: actions/smssettings.php:347 -#, fuzzy msgid "" "A confirmation code was sent to the phone number you added. Check your phone " "for the code and instructions on how to use it." msgstr "" "Um código de confirmação foi enviado para o número de telefone que você " -"informou. Verifique sua caixa de entrada (e de spam!) para o código e " -"instruções sobre como usá-lo." +"informou. Verifique no seu telefone o código e instruções sobre como usá-lo." #: actions/smssettings.php:374 msgid "That is the wrong confirmation number." @@ -3602,9 +3585,8 @@ msgid "That is not your phone number." msgstr "Esse não é seu número de telefone." #: actions/smssettings.php:465 -#, fuzzy msgid "Mobile carrier" -msgstr "Selecione uma operadora" +msgstr "Operadora de celular" #: actions/smssettings.php:469 msgid "Select a carrier" @@ -3616,9 +3598,8 @@ msgid "" "Mobile carrier for your phone. If you know a carrier that accepts SMS over " "email but isn't listed here, send email to let us know at %s." msgstr "" -"A operadora móvel do seu celular. Se você conhece uma operadora que aceita " -"SMS via e-mail que não está listada aqui, informe-nos enviando uma mensagem " -"para %s." +"A operadora do seu celular. Se você conhece uma operadora que aceita SMS via " +"e-mail que não está listada aqui, informe-nos enviando uma mensagem para %s." #: actions/smssettings.php:498 msgid "No code entered" @@ -3641,14 +3622,14 @@ msgid "Subscribed" msgstr "Assinado" #: actions/subscribers.php:50 -#, fuzzy, php-format +#, php-format msgid "%s subscribers" -msgstr "Assinantes" +msgstr "Assinantes de %s" #: actions/subscribers.php:52 #, php-format msgid "%s subscribers, page %d" -msgstr "" +msgstr "Assinantes de %s, pág. %d" #: actions/subscribers.php:63 msgid "These are the people who listen to your notices." @@ -3664,11 +3645,13 @@ msgid "" "You have no subscribers. Try subscribing to people you know and they might " "return the favor" msgstr "" +"Você não tem nenhum assinante. Experimente assinar pessoas que você conhece " +"e eles podem devolver o favor" #: actions/subscribers.php:110 #, php-format msgid "%s has no subscribers. Want to be the first?" -msgstr "" +msgstr "%s não possui nenhum assinante. Quer ser o(a) primeiro(a)?" #: actions/subscribers.php:114 #, php-format @@ -3676,16 +3659,18 @@ msgid "" "%s has no subscribers. Why not [register an account](%%%%action.register%%%" "%) and be the first?" msgstr "" +"%s não possui nenhum assinante. Por que você não [registra uma conta](%%%%" +"action.register%%%%) e se torna o(a) primeiro(a)?" #: actions/subscriptions.php:52 #, php-format msgid "%s subscriptions" -msgstr "%s assinaturas" +msgstr "Assinaturas de %s" #: actions/subscriptions.php:54 #, php-format msgid "%s subscriptions, page %d" -msgstr "%s assinaturas, página %d" +msgstr "Assinaturas de %s, pág. %d" #: actions/subscriptions.php:65 msgid "These are the people whose notices you listen to." @@ -3705,11 +3690,17 @@ msgid "" "featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can " "automatically subscribe to people you already follow there." msgstr "" +"Você não está acompanhando as mensagens de ninguém. Experimente assinar " +"algumas pessoas que você conhece. Você pode [procurar por pessoas](%%action." +"peoplesearch%%) e verificar os membros nos grupos que você está interessado " +"e nossos [usuários de destaque](%%action.featured%%). Se você for um " +"[usuário do Twitter](%%action.twittersettings%%), você pode assinar " +"automaticamente as pessoas que já segue lá." #: actions/subscriptions.php:123 actions/subscriptions.php:127 -#, fuzzy, php-format +#, php-format msgid "%s is not listening to anyone." -msgstr "%1$s agora está acompanhando " +msgstr "%s não está acompanhando ninguém." #: actions/subscriptions.php:194 msgid "Jabber" @@ -3720,56 +3711,53 @@ msgid "SMS" msgstr "SMS" #: actions/tag.php:68 -#, fuzzy, php-format +#, php-format msgid "Notices tagged with %s, page %d" -msgstr "Mensagens etiquetadas com %s" +msgstr "Mensagens etiquetadas com %s, pág. %d" #: actions/tag.php:86 -#, fuzzy, php-format +#, php-format msgid "Notice feed for tag %s (RSS 1.0)" -msgstr "Feed de mensagens de %s" +msgstr "Fonte de mensagens de %s (RSS 1.0)" #: actions/tag.php:92 -#, fuzzy, php-format +#, php-format msgid "Notice feed for tag %s (RSS 2.0)" -msgstr "Feed de mensagens de %s" +msgstr "Fonte de mensagens de %s (RSS 2.0)" #: actions/tag.php:98 -#, fuzzy, php-format +#, php-format msgid "Notice feed for tag %s (Atom)" -msgstr "Feed de mensagens de %s" +msgstr "Fonte de mensagens de %s (Atom)" #: actions/tagother.php:39 -#, fuzzy msgid "No ID argument." msgstr "Nenhum argumento de ID." #: actions/tagother.php:65 #, php-format msgid "Tag %s" -msgstr "Tag %s" +msgstr "Etiqueta %s" #: actions/tagother.php:77 lib/userprofile.php:75 -#, fuzzy msgid "User profile" -msgstr "O usuário não tem perfil." +msgstr "Perfil do usuário" #: actions/tagother.php:81 lib/userprofile.php:102 msgid "Photo" -msgstr "" +msgstr "Imagem" #: actions/tagother.php:141 -#, fuzzy msgid "Tag user" -msgstr "Etiquetas" +msgstr "Etiquetar o usuário" #: actions/tagother.php:151 msgid "" "Tags for this user (letters, numbers, -, ., and _), comma- or space- " "separated" msgstr "" -"Etiquetas desse usuário (letras, números, -, ., e _), separadas por vÃrgulas " -"ou espaços" +"Etiquetas para este usuário (letras, números, -, ., e _), separadas por " +"vÃrgulas ou espaços" #: actions/tagother.php:193 msgid "" @@ -3788,26 +3776,23 @@ msgstr "" #: actions/tagrss.php:35 msgid "No such tag." -msgstr "Essa etiqueta não existe." +msgstr "Esta etiqueta não existe." #: actions/twitapitrends.php:87 msgid "API method under construction." msgstr "O método da API está em construção." #: actions/unblock.php:59 -#, fuzzy msgid "You haven't blocked that user." -msgstr "Você já bloqueou esse usuário." +msgstr "Você não bloqueou esse usuário." #: actions/unsandbox.php:72 -#, fuzzy msgid "User is not sandboxed." -msgstr "O usuário bloqueou você." +msgstr "O usuário não está em isolamento." #: actions/unsilence.php:72 -#, fuzzy msgid "User is not silenced." -msgstr "O usuário não tem perfil." +msgstr "O usuário não está silenciado." #: actions/unsubscribe.php:77 msgid "No profile id in request." @@ -3825,6 +3810,8 @@ msgstr "Cancelado" #, php-format msgid "Listenee stream license ‘%s’ is not compatible with site license ‘%s’." msgstr "" +"A licença '%s' do fluxo do usuário não é compatÃvel com a licença '%s' do " +"site." #: actions/useradminpanel.php:58 lib/adminpanelaction.php:305 #: lib/personalgroupnav.php:115 @@ -3833,20 +3820,21 @@ msgstr "Usuário" #: actions/useradminpanel.php:69 msgid "User settings for this StatusNet site." -msgstr "" +msgstr "Configurações de usuário para este site StatusNet." #: actions/useradminpanel.php:149 msgid "Invalid bio limit. Must be numeric." -msgstr "" +msgstr "Limite da descrição inválido. Seu valor deve ser numérico." #: actions/useradminpanel.php:155 msgid "Invalid welcome text. Max length is 255 characters." msgstr "" +"Mensagem de boas vindas inválida. O comprimento máximo é de 255 caracteres." #: actions/useradminpanel.php:165 #, php-format msgid "Invalid default subscripton: '%1$s' is not user." -msgstr "" +msgstr "Assinatura padrão inválida: '%1$s' não é um usuário." #: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108 #: lib/personalgroupnav.php:109 @@ -3855,87 +3843,81 @@ msgstr "Perfil" #: actions/useradminpanel.php:222 msgid "Bio Limit" -msgstr "" +msgstr "Limite da descrição" #: actions/useradminpanel.php:223 msgid "Maximum length of a profile bio in characters." -msgstr "" +msgstr "Comprimento máximo da descrição do perfil, em caracteres." #: actions/useradminpanel.php:231 -#, fuzzy msgid "New users" -msgstr "Convidar novos usuários" +msgstr "Novos usuários" #: actions/useradminpanel.php:235 msgid "New user welcome" -msgstr "" +msgstr "Boas vindas aos novos usuários" #: actions/useradminpanel.php:236 msgid "Welcome text for new users (Max 255 chars)." -msgstr "" +msgstr "Texto de boas vindas para os novos usuários (máx. 255 caracteres)." #: actions/useradminpanel.php:241 -#, fuzzy msgid "Default subscription" -msgstr "Todas as assinaturas" +msgstr "Assinatura padrão" #: actions/useradminpanel.php:242 -#, fuzzy msgid "Automatically subscribe new users to this user." -msgstr "Assinar automaticamente à quem me assinar" +msgstr "Os novos usuários assinam esse usuário automaticamente." #: actions/useradminpanel.php:251 -#, fuzzy msgid "Invitations" -msgstr "Convite(s) enviado(s)" +msgstr "Convites" #: actions/useradminpanel.php:256 -#, fuzzy msgid "Invitations enabled" -msgstr "Convite(s) enviado(s)" +msgstr "Convites habilitados" #: actions/useradminpanel.php:258 msgid "Whether to allow users to invite new users." -msgstr "" +msgstr "Define se os usuários podem ou não convidar novos usuários." #: actions/useradminpanel.php:265 msgid "Sessions" -msgstr "" +msgstr "Sessões" #: actions/useradminpanel.php:270 msgid "Handle sessions" -msgstr "" +msgstr "Gerenciar sessões" #: actions/useradminpanel.php:272 msgid "Whether to handle sessions ourselves." -msgstr "" +msgstr "Define se nós cuidamos do gerenciamento das sessões." #: actions/useradminpanel.php:276 msgid "Session debugging" -msgstr "" +msgstr "Depuração da sessão" #: actions/useradminpanel.php:278 msgid "Turn on debugging output for sessions." -msgstr "" +msgstr "Ativa a saÃda de depuração para as sessões." #: actions/userauthorization.php:105 msgid "Authorize subscription" msgstr "Autorizar a assinatura" #: actions/userauthorization.php:110 -#, fuzzy msgid "" "Please check these details to make sure that you want to subscribe to this " "user’s notices. If you didn’t just ask to subscribe to someone’s notices, " "click “Rejectâ€." msgstr "" -"Por favor, verifique estes detalhes para ter certeza que você quer seguir as " -"mensagens deste usuário. Se você não solicitou seguir as mensagens de " -"alguém, clique em \"Cancelar\"." +"Por favor, verifique estes detalhes para ter certeza que você quer assinar " +"as mensagens deste usuário. Se você não solicitou assinar as mensagens de " +"alguém, clique em \"Recusar\"." #: actions/userauthorization.php:188 msgid "License" -msgstr "" +msgstr "Licença" #: actions/userauthorization.php:209 msgid "Accept" @@ -3951,9 +3933,8 @@ msgid "Reject" msgstr "Recusar" #: actions/userauthorization.php:212 -#, fuzzy msgid "Reject this subscription" -msgstr "%s assinaturas" +msgstr "Recusar esta assinatura" #: actions/userauthorization.php:225 msgid "No authorization request!" @@ -3964,7 +3945,6 @@ msgid "Subscription authorized" msgstr "A assinatura foi autorizada" #: actions/userauthorization.php:249 -#, fuzzy msgid "" "The subscription has been authorized, but no callback URL was passed. Check " "with the site’s instructions for details on how to authorize the " @@ -3979,90 +3959,90 @@ msgid "Subscription rejected" msgstr "A assinatura foi recusada" #: actions/userauthorization.php:261 -#, fuzzy msgid "" "The subscription has been rejected, but no callback URL was passed. Check " "with the site’s instructions for details on how to fully reject the " "subscription." msgstr "" "A assinatura foi rejeitada, mas não foi informada nenhuma URL de retorno. " -"Verifique as instruções do site para maiores detalhes em como rejeitar " +"Verifique as instruções do site para detalhes sobre como rejeitar " "completamente a assinatura." #: actions/userauthorization.php:296 #, php-format msgid "Listener URI ‘%s’ not found here" -msgstr "" +msgstr "A URI ‘%s’ do usuário não foi encontrada aqui" #: actions/userauthorization.php:301 #, php-format msgid "Listenee URI ‘%s’ is too long." -msgstr "" +msgstr "A URI ‘%s’ do usuário é muito extensa." #: actions/userauthorization.php:307 #, php-format msgid "Listenee URI ‘%s’ is a local user." -msgstr "" +msgstr "A URI ‘%s’ é de um usuário local." #: actions/userauthorization.php:322 #, php-format msgid "Profile URL ‘%s’ is for a local user." -msgstr "" +msgstr "A URL ‘%s’ do perfil é de um usuário local." #: actions/userauthorization.php:338 #, php-format msgid "Avatar URL ‘%s’ is not valid." -msgstr "" +msgstr "A URL ‘%s’ do avatar não é válida." #: actions/userauthorization.php:343 -#, fuzzy, php-format +#, php-format msgid "Can’t read avatar URL ‘%s’." -msgstr "Não é possÃvel ler a URL '%s' do avatar" +msgstr "Não é possÃvel ler a URL '%s' do avatar." #: actions/userauthorization.php:348 -#, fuzzy, php-format +#, php-format msgid "Wrong image type for avatar URL ‘%s’." -msgstr "Tipo de imagem errado para '%s'" +msgstr "Tipo de imagem errado para a URL '%s' do avatar." #: actions/userbyid.php:70 -#, fuzzy msgid "No ID." msgstr "Nenhuma ID." #: actions/userdesignsettings.php:76 lib/designsettings.php:65 -#, fuzzy msgid "Profile design" -msgstr "Configurações do perfil" +msgstr "Aparência do perfil" #: actions/userdesignsettings.php:87 lib/designsettings.php:76 msgid "" "Customize the way your profile looks with a background image and a colour " "palette of your choice." msgstr "" +"Personalize a aparência do seu perfil, com uma imagem de fundo e uma paleta " +"de cores da sua preferência." #: actions/userdesignsettings.php:282 msgid "Enjoy your hotdog!" -msgstr "" +msgstr "Aproveite o seu cachorro-quente!" #: actions/usergroups.php:64 #, php-format msgid "%s groups, page %d" -msgstr "Grupos de %s, página %d" +msgstr "Grupos de %s, pág. %d" #: actions/usergroups.php:130 -#, fuzzy msgid "Search for more groups" -msgstr "Pesquisar por pessoa ou texto" +msgstr "Procurar por outros grupos" #: actions/usergroups.php:153 -#, fuzzy, php-format +#, php-format msgid "%s is not a member of any group." -msgstr "Você não está assinando esse perfil." +msgstr "%s não é membro de nenhum grupo." #: actions/usergroups.php:158 #, php-format msgid "Try [searching for groups](%%action.groupsearch%%) and joining them." msgstr "" +"Experimente [procurar por grupos](%%action.groupsearch%%) e associar-se à " +"eles." #: classes/File.php:137 #, php-format @@ -4070,21 +4050,22 @@ msgid "" "No file may be larger than %d bytes and the file you sent was %d bytes. Try " "to upload a smaller version." msgstr "" +"Nenhum arquivo pode ser maior que %d bytes e o arquivo que você enviou " +"possui %d bytes. Experimente enviar uma versão menor." #: classes/File.php:147 #, php-format msgid "A file this large would exceed your user quota of %d bytes." -msgstr "" +msgstr "Um arquivo deste tamanho excederá a sua conta de %d bytes." #: classes/File.php:154 #, php-format msgid "A file this large would exceed your monthly quota of %d bytes." -msgstr "" +msgstr "Um arquivo deste tamanho excederá a sua conta mensal de %d bytes." #: classes/Message.php:45 -#, fuzzy msgid "You are banned from sending direct messages." -msgstr "Ocorreu um erro durante o envio da mensagem direta." +msgstr "Você está proibido de enviar mensagens diretas." #: classes/Message.php:61 msgid "Could not insert message." @@ -4097,12 +4078,11 @@ msgstr "Não foi possÃvel atualizar a mensagem com a nova URI." #: classes/Notice.php:172 #, php-format msgid "DB error inserting hashtag: %s" -msgstr "Erro no banco de dados durante a inserção de hashtag: %s" +msgstr "Erro no banco de dados durante a inserção da hashtag: %s" #: classes/Notice.php:226 -#, fuzzy msgid "Problem saving notice. Too long." -msgstr "Problema ao salvar a mensagem." +msgstr "Problema no salvamento da mensagem. Ela é muito extensa." #: classes/Notice.php:230 msgid "Problem saving notice. Unknown user." @@ -4116,45 +4096,43 @@ msgstr "" "novamente daqui a alguns minutos." #: classes/Notice.php:241 -#, fuzzy msgid "" "Too many duplicate messages too quickly; take a breather and post again in a " "few minutes." msgstr "" -"Muitas mensagens em um perÃodo curto de tempo; dê uma respirada e publique " -"novamente daqui a alguns minutos." +"Muitas mensagens duplicadas em um perÃodo curto de tempo; dê uma respirada e " +"publique novamente daqui a alguns minutos." #: classes/Notice.php:247 msgid "You are banned from posting notices on this site." -msgstr "Você foi banido de publicar mensagens nesse site." +msgstr "Você está proibido de publicar mensagens neste site." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." -msgstr "Problema ao salvar a mensagem." +msgstr "Problema no salvamento da mensagem." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Erro no banco de dados na inserção da reposta: %s" -#: classes/Notice.php:1371 -#, fuzzy, php-format +#: classes/Notice.php:1361 +#, php-format msgid "RT @%1$s %2$s" -msgstr "%1$s (%2$s)" +msgstr "RT @%1$s %2$s" #: classes/User.php:368 -#, fuzzy, php-format +#, php-format msgid "Welcome to %1$s, @%2$s!" -msgstr "Mensagem para %1$s no %2$s" +msgstr "Bem vindo(a) a %1$s, @%2$s!" #: classes/User_group.php:380 msgid "Could not create group." msgstr "Não foi possÃvel criar o grupo." #: classes/User_group.php:409 -#, fuzzy msgid "Could not set group membership." -msgstr "Não foi possÃvel salvar a assinatura." +msgstr "Não foi possÃvel configurar a associação ao grupo." #: lib/accountsettingsaction.php:108 msgid "Change your profile settings" @@ -4166,16 +4144,15 @@ msgstr "Enviar um avatar" #: lib/accountsettingsaction.php:116 msgid "Change your password" -msgstr "Altere a sua senha" +msgstr "Alterar a sua senha" #: lib/accountsettingsaction.php:120 msgid "Change email handling" msgstr "Configurações de uso do e-mail" #: lib/accountsettingsaction.php:124 -#, fuzzy msgid "Design your profile" -msgstr "O usuário não tem perfil." +msgstr "Mude a aparência do seu perfil" #: lib/accountsettingsaction.php:128 msgid "Other" @@ -4194,244 +4171,237 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Página sem tÃtulo" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Navegação primária no site" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "InÃcio" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" -msgstr "Perfil pessoal e mensagens dos amigos" +msgstr "Perfil pessoal e fluxo de mensagens dos amigos" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Conta" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" -msgstr "Alterar email, avatar, senha, perfil" +msgstr "Mude seu e-mail, avatar, senha, perfil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Conectar" -#: lib/action.php:436 -#, fuzzy +#: lib/action.php:437 msgid "Connect to services" -msgstr "Não foi possÃvel redirecionar para o servidor: %s" +msgstr "Conecte-se a outros serviços" -#: lib/action.php:440 -#, fuzzy +#: lib/action.php:441 msgid "Change site configuration" -msgstr "Navegação primária no site" +msgstr "Mude as configurações do site" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Convidar" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Convide seus amigos e colegas para unir-se a você no %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Sair" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" -msgstr "Sair deste site" +msgstr "Sai do site" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" -msgstr "Criar uma nova conta" +msgstr "Cria uma conta" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" -msgstr "Entrar" +msgstr "Autentique-se no site" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Ajuda" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" -msgstr "Ajuda" +msgstr "Ajudem-me!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Procurar" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" -msgstr "Pesquisar por pessoa ou texto" +msgstr "Procura por pessoas ou textos" -#: lib/action.php:485 -#, fuzzy +#: lib/action.php:486 msgid "Site notice" -msgstr "Nova mensagem" +msgstr "Mensagem do site" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" -msgstr "" +msgstr "Visualizações locais" -#: lib/action.php:617 -#, fuzzy +#: lib/action.php:618 msgid "Page notice" -msgstr "Nova mensagem" +msgstr "NotÃcia da página" -#: lib/action.php:719 -#, fuzzy +#: lib/action.php:720 msgid "Secondary site navigation" -msgstr "Navegação pelas assinaturas" +msgstr "Navegação secundária no site" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Sobre" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" -msgstr "" +msgstr "Termos de uso" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Privacidade" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Fonte" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Contato" -#: lib/action.php:741 -#, fuzzy +#: lib/action.php:742 msgid "Badge" -msgstr "Chamar a atenção" +msgstr "Mini-aplicativo" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" -msgstr "" +msgstr "Licença do software StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." "broughtby%%](%%site.broughtbyurl%%). " msgstr "" -"**%%site.name%%** é um serviço de microblogagem disponibilizado por [%%site." +"**%%site.name%%** é um serviço de microblog disponibilizado por [%%site." "broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " -msgstr "**%%site.name%%** é um serviço de microblogagem. " +msgstr "**%%site.name%%** é um serviço de microblog. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" "s, available under the [GNU Affero General Public License](http://www.fsf." "org/licensing/licenses/agpl-3.0.html)." msgstr "" -"Ele funciona sob o software de microblogagem [StatusNet](http://status." -"net/), versão %s, disponÃvel sob a [GNU Affero General Public License] " -"(http://www.fsf.org/licensing/licenses/agpl-3.0.html)." +"Ele funciona sobre o software de microblog [StatusNet](http://status.net/), " +"versão %s, disponÃvel sob a [GNU Affero General Public License] (http://www." +"fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 -#, fuzzy +#: lib/action.php:791 msgid "Site content license" -msgstr "Procure no conteúdo das mensagens" +msgstr "Licença do conteúdo do site" -#: lib/action.php:799 -#, fuzzy +#: lib/action.php:800 msgid "All " -msgstr "Todas" +msgstr "Todas " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." -msgstr "licença" +msgstr "licença." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Paginação" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Próximo" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Anterior" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." -msgstr "" -"Ocorreu um problema com o seu token de sessão. Tente novamente, por favor." +msgstr "Ocorreu um problema com o seu token de sessão." #: lib/adminpanelaction.php:96 -#, fuzzy msgid "You cannot make changes to this site." -msgstr "Você não pode enviar uma mensagem para esse usuário." +msgstr "Você não pode fazer alterações neste site." #: lib/adminpanelaction.php:195 -#, fuzzy msgid "showForm() not implemented." -msgstr "O comando não foi implementado ainda." +msgstr "showForm() não implementado." #: lib/adminpanelaction.php:224 -#, fuzzy msgid "saveSettings() not implemented." -msgstr "O comando não foi implementado ainda." +msgstr "saveSettings() não implementado." #: lib/adminpanelaction.php:247 -#, fuzzy msgid "Unable to delete design setting." -msgstr "Não foi possÃvel salvar suas configurações do Twitter!" +msgstr "Não foi possÃvel excluir as configurações da aparência." #: lib/adminpanelaction.php:300 -#, fuzzy msgid "Basic site configuration" -msgstr "Confirmação do endereço de e-mail" +msgstr "Configuração básica do site" #: lib/adminpanelaction.php:303 -#, fuzzy msgid "Design configuration" -msgstr "Confirmação de SMS" +msgstr "Configuração da aparência" #: lib/adminpanelaction.php:306 lib/adminpanelaction.php:309 -#, fuzzy msgid "Paths configuration" -msgstr "Confirmação de SMS" +msgstr "Configuração dos caminhos" #: lib/attachmentlist.php:87 msgid "Attachments" -msgstr "" +msgstr "Anexos" #: lib/attachmentlist.php:265 msgid "Author" -msgstr "" +msgstr "Autor" #: lib/attachmentlist.php:278 -#, fuzzy msgid "Provider" -msgstr "Perfil" +msgstr "Operadora" #: lib/attachmentnoticesection.php:67 msgid "Notices where this attachment appears" -msgstr "" +msgstr "Mensagens onde este anexo aparece" #: lib/attachmenttagcloudsection.php:48 msgid "Tags for this attachment" -msgstr "" +msgstr "Etiquetas para este anexo" + +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Alterar a senha" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Alterar a senha" #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" @@ -4450,19 +4420,18 @@ msgid "Sorry, this command is not yet implemented." msgstr "Desculpe, mas esse comando ainda não foi implementado." #: lib/command.php:88 -#, fuzzy, php-format +#, php-format msgid "Could not find a user with nickname %s" -msgstr "" -"Não foi possÃvel atualizar o usuário com o endereço de e-mail confirmado." +msgstr "Não foi possÃvel encontrar um usuário com a identificação %s" #: lib/command.php:92 msgid "It does not make a lot of sense to nudge yourself!" -msgstr "" +msgstr "Não faz muito sentido chamar a sua própria atenção!" #: lib/command.php:99 -#, fuzzy, php-format +#, php-format msgid "Nudge sent to %s" -msgstr "Chamada de atenção enviada" +msgstr "Foi enviada a chamada de atenção para %s" #: lib/command.php:126 #, php-format @@ -4471,10 +4440,13 @@ msgid "" "Subscribers: %2$s\n" "Notices: %3$s" msgstr "" +"Assinaturas: %1$s\n" +"Assinantes: %2$s\n" +"Mensagens: %3$s" #: lib/command.php:152 lib/command.php:399 lib/command.php:460 msgid "Notice with that id does not exist" -msgstr "" +msgstr "Não existe uma mensagem com essa id" #: lib/command.php:168 lib/command.php:415 lib/command.php:476 #: lib/command.php:532 @@ -4511,50 +4483,46 @@ msgid "About: %s" msgstr "Sobre: %s" #: lib/command.php:358 scripts/xmppdaemon.php:301 -#, fuzzy, php-format +#, php-format msgid "Message too long - maximum is %d characters, you sent %d" msgstr "" -"A mensagem é muito extensa - o máximo são 140 caracteres e você enviou %d" +"A mensagem é muito extensa - o máximo são %d caracteres e você enviou %d" #: lib/command.php:378 msgid "Error sending direct message." msgstr "Ocorreu um erro durante o envio da mensagem direta." #: lib/command.php:422 -#, fuzzy msgid "Cannot repeat your own notice" -msgstr "Não é possÃvel ligar a notificação." +msgstr "Você não pode repetir sua própria mensagem" #: lib/command.php:427 -#, fuzzy msgid "Already repeated that notice" -msgstr "Excluir esta mensagem" +msgstr "Você já repetiu essa mensagem" #: lib/command.php:435 -#, fuzzy, php-format +#, php-format msgid "Notice from %s repeated" -msgstr "Mensagem publicada" +msgstr "Mensagem de %s repetida" #: lib/command.php:437 -#, fuzzy msgid "Error repeating notice." -msgstr "Problema ao salvar a mensagem." +msgstr "Erro na repetição da mensagem." #: lib/command.php:491 -#, fuzzy, php-format +#, php-format msgid "Notice too long - maximum is %d characters, you sent %d" msgstr "" -"A mensagem é muito extensa - o máximo são 140 caracteres e você enviou %d" +"A mensagem é muito extensa - o máximo são %d caracteres e você enviou %d" #: lib/command.php:500 -#, fuzzy, php-format +#, php-format msgid "Reply to %s sent" -msgstr "Responder a esta mensagem" +msgstr "A resposta a %s foi enviada" #: lib/command.php:502 -#, fuzzy msgid "Error saving notice." -msgstr "Problema ao salvar a mensagem." +msgstr "Erro no salvamento da mensagem." #: lib/command.php:556 msgid "Specify the name of the user to subscribe to" @@ -4567,7 +4535,7 @@ msgstr "Efetuada a assinatura de %s" #: lib/command.php:584 msgid "Specify the name of the user to unsubscribe from" -msgstr "Especifique o nome do usuário que deixará de ser assinado" +msgstr "Especifique o nome do usuário cuja assinatura será cancelada" #: lib/command.php:591 #, php-format @@ -4584,7 +4552,7 @@ msgstr "Notificação desligada." #: lib/command.php:614 msgid "Can't turn off notification." -msgstr "Não é possÃvel desligar a notificação" +msgstr "Não é possÃvel desligar a notificação." #: lib/command.php:635 msgid "Notification on." @@ -4596,50 +4564,49 @@ msgstr "Não é possÃvel ligar a notificação." #: lib/command.php:650 msgid "Login command is disabled" -msgstr "" +msgstr "O comando para autenticação está desabilitado" #: lib/command.php:664 -#, fuzzy, php-format +#, php-format msgid "Could not create login token for %s" -msgstr "Não foi possÃvel criar a favorita." +msgstr "Não foi possÃvel criar o token de autenticação para %s" #: lib/command.php:669 #, php-format msgid "This link is useable only once, and is good for only 2 minutes: %s" msgstr "" +"Este link é utilizável somente uma vez e é válido somente por dois minutos: %" +"s" #: lib/command.php:685 -#, fuzzy msgid "You are not subscribed to anyone." -msgstr "Você não está assinando esse perfil." +msgstr "Você não está assinando ninguém." #: lib/command.php:687 msgid "You are subscribed to this person:" msgid_plural "You are subscribed to these people:" -msgstr[0] "Você já está assinando esses usuários:" -msgstr[1] "Você já está assinando esses usuários:" +msgstr[0] "Você já está assinando esta pessoa:" +msgstr[1] "Você já está assinando estas pessoas:" #: lib/command.php:707 -#, fuzzy msgid "No one is subscribed to you." -msgstr "Não foi possÃvel fazer com que o outros o sigam." +msgstr "Ninguém o assinou ainda." #: lib/command.php:709 msgid "This person is subscribed to you:" msgid_plural "These people are subscribed to you:" -msgstr[0] "Não foi possÃvel fazer com que o outros o sigam." -msgstr[1] "Não foi possÃvel fazer com que o outros o sigam." +msgstr[0] "Esta pessoa está assinando você:" +msgstr[1] "Estas pessoas estão assinando você:" #: lib/command.php:729 -#, fuzzy msgid "You are not a member of any groups." -msgstr "Você não está assinando esse perfil." +msgstr "Você não é membro de nenhum grupo." #: lib/command.php:731 msgid "You are a member of this group:" msgid_plural "You are a member of these groups:" -msgstr[0] "Você não é membro deste grupo." -msgstr[1] "Você não é membro deste grupo." +msgstr[0] "Você é membro deste grupo:" +msgstr[1] "Você é membro destes grupos:" #: lib/command.php:745 msgid "" @@ -4681,32 +4648,68 @@ msgid "" "tracks - not yet implemented.\n" "tracking - not yet implemented.\n" msgstr "" +"Comandos:\n" +"on - ativa as notificações\n" +"off - desativa as notificações\n" +"help - exibe esta ajuda\n" +"follow <identificação> - assina o usuário\n" +"groups - lista os grupos aos quais você se associou\n" +"subscriptions - lista as pessoas que você segue\n" +"subscribers - lista as pessoas que seguem você\n" +"leave <identificação> - deixa de assinar o usuário\n" +"d <identificação> <texto> - mensagem direta para o usuário\n" +"get <nickname> - obtém a última mensagem do usuário\n" +"whois <nickname> - obtém as informações do perfil do usuário\n" +"fav <identificação> - adiciona a último mensagem do usuário como uma " +"'favorita'\n" +"fav #<id_da_mensagem> - adiciona a mensagem identificada como 'favorita'\n" +"repeat #<id_da_mensagem> - repete a mensagem identificada\n" +"repeat <identificação> - repete a última mensagem do usuário\n" +"reply #<id_da_mensagem> - responde a mensagem identificada\n" +"reply <identificação> - responde a última mensagem do usuário\n" +"join <grupo> - associa-se ao grupo\n" +"login - obtém um link para se autenticar na interface web\n" +"drop <grupo> - deixa o grupo\n" +"stats - obtém suas estatÃsticas\n" +"stop - o mesmo que 'off'\n" +"quit - o mesmo que 'off'\n" +"sub <identificação> - o mesmo que 'follow'\n" +"unsub <identificação> - o mesmo que 'leave'\n" +"last <identificação> - o mesmo que 'get'\n" +"on <identificação> - não implementado ainda\n" +"off <identificação> - não implementado ainda\n" +"nudge <identificação> - chama a atenção do usuário\n" +"invite <número_de_ telefone> - não implementado ainda\n" +"track <palavra> - não implementado ainda\n" +"untrack <palavra> - não implementado ainda\n" +"track off - não implementado ainda\n" +"untrack all - não implementado ainda\n" +"tracks - não implementado ainda\n" +"tracking - não implementado ainda\n" #: lib/common.php:199 -#, fuzzy msgid "No configuration file found. " -msgstr "Nenhum código de confirmação." +msgstr "Não foi encontrado nenhum arquivo de configuração. " #: lib/common.php:200 msgid "I looked for configuration files in the following places: " -msgstr "" +msgstr "Eu procurei pelos arquivos de configuração nos seguintes lugares: " #: lib/common.php:201 msgid "You may wish to run the installer to fix this." -msgstr "" +msgstr "Você pode querer executar o instalador para corrigir isto." #: lib/common.php:202 -#, fuzzy msgid "Go to the installer." -msgstr "Entrar" +msgstr "Ir para o instalador." #: lib/connectsettingsaction.php:110 msgid "IM" -msgstr "IM" +msgstr "MI" #: lib/connectsettingsaction.php:111 msgid "Updates by instant messenger (IM)" -msgstr "Atualizações via instant messenger (IM)" +msgstr "Atualizações via mensageiro instantâneo (MI)" #: lib/connectsettingsaction.php:116 msgid "Updates by SMS" @@ -4714,26 +4717,25 @@ msgstr "Atualizações via SMS" #: lib/dberroraction.php:60 msgid "Database error" -msgstr "" +msgstr "Erro no banco de dados" #: lib/designsettings.php:105 -#, fuzzy msgid "Upload file" -msgstr "Enviar" +msgstr "Enviar arquivo" #: lib/designsettings.php:109 -#, fuzzy msgid "" "You can upload your personal background image. The maximum file size is 2MB." -msgstr "Você pode enviar seu avatar pessoal. O tamanho máximo do arquivo é %s" +msgstr "" +"Você pode enviar sua imagem de fundo. O tamanho máximo do arquivo é de 2Mb." #: lib/designsettings.php:418 msgid "Design defaults restored." -msgstr "" +msgstr "A aparência padrão foi restaurada." #: lib/disfavorform.php:114 lib/disfavorform.php:140 msgid "Disfavor this notice" -msgstr "Tirar das favoritas" +msgstr "Excluir das favoritas" #: lib/favorform.php:114 lib/favorform.php:140 msgid "Favor this notice" @@ -4745,19 +4747,19 @@ msgstr "Tornar favorita" #: lib/feed.php:85 msgid "RSS 1.0" -msgstr "" +msgstr "RSS 1.0" #: lib/feed.php:87 msgid "RSS 2.0" -msgstr "" +msgstr "RSS 2.0" #: lib/feed.php:89 msgid "Atom" -msgstr "" +msgstr "Atom" #: lib/feed.php:91 msgid "FOAF" -msgstr "" +msgstr "FOAF" #: lib/feedlist.php:64 msgid "Export data" @@ -4772,9 +4774,8 @@ msgid "All" msgstr "Todas" #: lib/galleryaction.php:139 -#, fuzzy msgid "Select tag to filter" -msgstr "Selecione uma operadora" +msgstr "Selecione a etiqueta para filtrar" #: lib/galleryaction.php:140 msgid "Tag" @@ -4790,17 +4791,16 @@ msgstr "Ir" #: lib/groupeditform.php:163 msgid "URL of the homepage or blog of the group or topic" -msgstr "URL para seu site, blog ou perfil em outro site" +msgstr "URL para o site ou blog do grupo ou tópico" #: lib/groupeditform.php:168 -#, fuzzy msgid "Describe the group or topic" -msgstr "Descreva o grupo ou tópico em 140 caracteres." +msgstr "Descreva o grupo ou tópico" #: lib/groupeditform.php:170 -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d characters" -msgstr "Descreva o grupo ou tópico em 140 caracteres." +msgstr "Descreva o grupo ou tópico em %d caracteres." #: lib/groupeditform.php:172 msgid "Description" @@ -4809,26 +4809,28 @@ msgstr "Descrição" #: lib/groupeditform.php:179 msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"" -msgstr "Onde você está, ex: \"cidade, estado (ou região), paÃs\"" +msgstr "" +"Localização do grupo, caso tenha alguma, como \"cidade, estado (ou região), " +"paÃs\"" #: lib/groupeditform.php:187 #, php-format msgid "Extra nicknames for the group, comma- or space- separated, max %d" msgstr "" +"Apelidos extras para o grupo, separado por vÃrgulas ou espaços, no máximo %d" #: lib/groupnav.php:85 msgid "Group" msgstr "Grupo" #: lib/groupnav.php:101 -#, fuzzy msgid "Blocked" -msgstr "Bloquear" +msgstr "Bloqueados" #: lib/groupnav.php:102 -#, fuzzy, php-format +#, php-format msgid "%s blocked users" -msgstr "Bloquear usuário" +msgstr "%s usuários bloqueados" #: lib/groupnav.php:108 #, php-format @@ -4845,9 +4847,9 @@ msgid "Add or edit %s logo" msgstr "Adicionar ou editar logo de %s" #: lib/groupnav.php:120 -#, fuzzy, php-format +#, php-format msgid "Add or edit %s design" -msgstr "Adicionar ou editar logo de %s" +msgstr "Adicionar ou editar a aparência de %s" #: lib/groupsbymemberssection.php:71 msgid "Groups with most members" @@ -4867,9 +4869,9 @@ msgid "This page is not available in a media type you accept" msgstr "Esta página não está disponÃvel em um tipo de mÃdia que você aceita" #: lib/imagefile.php:75 -#, fuzzy, php-format +#, php-format msgid "That file is too big. The maximum file size is %s." -msgstr "Você pode enviar seu avatar pessoal." +msgstr "O arquivo é muito grande. O tamanho máximo é de %s." #: lib/imagefile.php:80 msgid "Partial upload." @@ -4897,16 +4899,16 @@ msgstr "Tipo de arquivo desconhecido" #: lib/imagefile.php:217 msgid "MB" -msgstr "" +msgstr "Mb" #: lib/imagefile.php:219 msgid "kB" -msgstr "" +msgstr "Kb" #: lib/jabber.php:191 #, php-format msgid "[%s]" -msgstr "" +msgstr "[%s]" #: lib/joinform.php:114 msgid "Join" @@ -4918,7 +4920,7 @@ msgstr "Sair" #: lib/logingroupnav.php:80 msgid "Login with a username and password" -msgstr "Autentique-se com um nome de usuário e senha" +msgstr "Autentique-se com um nome de usuário e uma senha" #: lib/logingroupnav.php:86 msgid "Sign up for a new account" @@ -4944,14 +4946,26 @@ msgid "" "Thanks for your time, \n" "%s\n" msgstr "" +"Olá, %s.\n" +"\n" +"Alguém digitou este endereço de e-mail no %s.\n" +"\n" +"Se foi você, e caso queira confirmar a sua entrada, use a URL abaixo:\n" +"\n" +"\t%s\n" +"\n" +"Caso contrário, simplesmente ignore esta mesagem.\n" +"\n" +"Obrigado pela sua atenção, \n" +"%s\n" #: lib/mail.php:236 #, php-format msgid "%1$s is now listening to your notices on %2$s." -msgstr "%1$s agora está acompanhando suas mensagens em %2$s." +msgstr "%1$s agora está acompanhando suas mensagens no %2$s." #: lib/mail.php:241 -#, fuzzy, php-format +#, php-format msgid "" "%1$s is now listening to your notices on %2$s.\n" "\n" @@ -4964,12 +4978,16 @@ msgid "" "----\n" "Change your email address or notification options at %8$s\n" msgstr "" -"%1$s agora está acompanhando suas mensagens em %2$s.\n" +"%1$s agora está acompanhando suas mensagens no %2$s.\n" "\n" "\t%3$s\n" "\n" -"Cordialmente,\n" -"%4$s.\n" +"%4$s%5$s%6$s\n" +"Atenciosamente,\n" +"%7$s.\n" +"\n" +"----\n" +"Altere seu endereço de e-mail e suas opções de notificação em %8$s\n" #: lib/mail.php:254 #, php-format @@ -4993,7 +5011,7 @@ msgstr "" #: lib/mail.php:286 #, php-format msgid "New email address for posting to %s" -msgstr "Novo endereço de e-mail para postar para %s" +msgstr "Novo endereço de e-mail para publicar no %s" #: lib/mail.php:289 #, php-format @@ -5019,7 +5037,7 @@ msgstr "" #: lib/mail.php:413 #, php-format msgid "%s status" -msgstr "Status de %s" +msgstr "Mensagem de %s" #: lib/mail.php:439 msgid "SMS confirmation" @@ -5045,6 +5063,17 @@ msgid "" "With kind regards,\n" "%4$s\n" msgstr "" +"%1$s (%2$s) quer saber notÃcias suas e o está convidando para publicar " +"alguma mensagem..\n" +"\n" +"Por isso, vamos ouvir o que você tem a dizer. :)\n" +"\n" +"%3$s\n" +"\n" +"Não responda este e-mail, pois ele não chegará ao remetente.\n" +"\n" +"Atenciosamente,\n" +"%4$s\n" #: lib/mail.php:510 #, php-format @@ -5069,11 +5098,25 @@ msgid "" "With kind regards,\n" "%5$s\n" msgstr "" +"%1$s (%2$s) lhe enviou uma mensagem particular:\n" +"\n" +"------------------------------------------------------\n" +"%3$s\n" +"------------------------------------------------------\n" +"\n" +"Você pode responder a mensagem aqui:\n" +"\n" +"%4$s\n" +"\n" +"Não responda este e-mail, pois ele não chegará ao remetente.\n" +"\n" +"Atenciosamente,\n" +"%5$s\n" #: lib/mail.php:559 -#, fuzzy, php-format +#, php-format msgid "%s (@%s) added your notice as a favorite" -msgstr "%s marcaram sua mensagem como favorita" +msgstr "%s (@%s) marcou sua mensagem como favorita" #: lib/mail.php:561 #, php-format @@ -5095,11 +5138,27 @@ msgid "" "Faithfully yours,\n" "%6$s\n" msgstr "" +"%1$s (@%7$s) acabou de adicionar sua mensagem do %2$s como uma favorita.\n" +"\n" +"A URL da sua mensagem é:\n" +"\n" +"%3$s\n" +"\n" +"O texto da sua mensagem é:\n" +"\n" +"%4$s\n" +"\n" +"Você pode ver a lista de favoritas de %1$saqui:\n" +"\n" +"%5$s\n" +"\n" +"Atenciosamente,\n" +"%6$s\n" #: lib/mail.php:624 #, php-format msgid "%s (@%s) sent a notice to your attention" -msgstr "" +msgstr "%s (@%s) enviou uma mensagem citando você" #: lib/mail.php:626 #, php-format @@ -5115,6 +5174,17 @@ msgid "" "\t%4$s\n" "\n" msgstr "" +"%1$s (@%9$s) acabou de enviar uma mensagem citando você ('@usuário') no %2" +"$s.\n" +"\n" +"A mensagem está aqui:\n" +"\n" +"\t%3$s\n" +"\n" +"Está escrito:\n" +"\n" +"\t%4$s\n" +"\n" #: lib/mailbox.php:89 msgid "Only the user can read their own mailboxes." @@ -5125,64 +5195,71 @@ msgid "" "You have no private messages. You can send private message to engage other " "users in conversation. People can send you messages for your eyes only." msgstr "" +"Você não tem nenhuma mensagem particular. Você pode enviar mensagens " +"privadas para envolver outras pessoas em uma conversa. Você também pode " +"receber mensagens privadas." -#: lib/mailbox.php:227 lib/noticelist.php:469 -#, fuzzy +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" -msgstr " de " +msgstr "de" #: lib/mediafile.php:98 lib/mediafile.php:123 msgid "There was a database error while saving your file. Please try again." msgstr "" +"Ocorreu um erro no banco de dados durante o salvamento do seu arquivo. Por " +"favor, tente novamente." #: lib/mediafile.php:142 msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini." msgstr "" +"O arquivo a ser enviado é maior do que o limite definido no parâmetro " +"upload_max_filesize do php.ini." #: lib/mediafile.php:147 msgid "" "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " "the HTML form." msgstr "" +"O arquivo a ser enviado é maior do que o limite definido no parâmetro " +"MAX_FILE_SIZE do formulário HTML." #: lib/mediafile.php:152 msgid "The uploaded file was only partially uploaded." -msgstr "" +msgstr "O arquivo foi apenas parcialmente enviado." #: lib/mediafile.php:159 msgid "Missing a temporary folder." -msgstr "" +msgstr "Falta uma pasta temporária." #: lib/mediafile.php:162 msgid "Failed to write file to disk." -msgstr "" +msgstr "Erro ao salvar o arquivo no disco." #: lib/mediafile.php:165 msgid "File upload stopped by extension." -msgstr "" +msgstr "O arquivo a ser enviado foi barrado por causa de sua extensão." #: lib/mediafile.php:179 lib/mediafile.php:216 msgid "File exceeds user's quota!" -msgstr "" +msgstr "O arquivo excede a quota do usuário!" #: lib/mediafile.php:196 lib/mediafile.php:233 msgid "File could not be moved to destination directory." -msgstr "" +msgstr "Não foi possÃvel mover o arquivo para o diretório de destino." #: lib/mediafile.php:201 lib/mediafile.php:237 -#, fuzzy msgid "Could not determine file's mime-type!" -msgstr "Não foi possÃvel excluir a favorita." +msgstr "Não foi possÃvel determinar o mime-type do arquivo!" #: lib/mediafile.php:270 #, php-format msgid " Try using another %s format." -msgstr "" +msgstr " Tente usar outro formato %s." #: lib/mediafile.php:275 #, php-format msgid "%s is not a supported filetype on this server." -msgstr "" +msgstr "%s não é um tipo de arquivo suportado neste servidor." #: lib/messageform.php:120 msgid "Send a direct notice" @@ -5192,75 +5269,75 @@ msgstr "Enviar uma mensagem direta" msgid "To" msgstr "Para" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Caracteres disponÃveis" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Enviar uma mensagem" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "E aÃ, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" -msgstr "" +msgstr "Anexo" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" -msgstr "" +msgstr "Anexar um arquivo" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "Indique a sua localização" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -msgstr "" +msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 -#, fuzzy +#: lib/noticelist.php:429 msgid "N" -msgstr "Não" +msgstr "N" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" -msgstr "" +msgstr "S" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" -msgstr "" +msgstr "L" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" -msgstr "" +msgstr "O" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" -msgstr "" +msgstr "em" -#: lib/noticelist.php:523 -#, fuzzy +#: lib/noticelist.php:531 msgid "in context" -msgstr "Nenhum conteúdo!" +msgstr "no contexto" -#: lib/noticelist.php:548 -#, fuzzy +#: lib/noticelist.php:556 msgid "Repeated by" -msgstr "Criar" +msgstr "Repetida por" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Responder a esta mensagem" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Responder" -#: lib/noticelist.php:620 -#, fuzzy +#: lib/noticelist.php:628 msgid "Notice repeated" -msgstr "Mensagem publicada" +msgstr "Mensagem repetida" #: lib/nudgeform.php:116 msgid "Nudge this user" @@ -5287,14 +5364,12 @@ msgid "Error inserting remote profile" msgstr "Erro na inserção do perfil remoto" #: lib/oauthstore.php:345 -#, fuzzy msgid "Duplicate notice" -msgstr "Excluir a mensagem" +msgstr "Duplicar a mensagem" #: lib/oauthstore.php:466 lib/subs.php:48 -#, fuzzy msgid "You have been banned from subscribing." -msgstr "Esse usuário bloqueou o seu pedido de assinatura." +msgstr "Você está proibido de assinar." #: lib/oauthstore.php:491 msgid "Couldn't insert new subscription." @@ -5346,14 +5421,12 @@ msgid "Subscribers" msgstr "Assinantes" #: lib/profileaction.php:157 -#, fuzzy msgid "All subscribers" -msgstr "Assinantes" +msgstr "Todos os assinantes" #: lib/profileaction.php:178 -#, fuzzy msgid "User ID" -msgstr "Usuário" +msgstr "ID do usuário" #: lib/profileaction.php:183 msgid "Member since" @@ -5361,16 +5434,15 @@ msgstr "Membro desde" #: lib/profileaction.php:245 msgid "All groups" -msgstr "" +msgstr "Todos os grupos" #: lib/profileformaction.php:123 -#, fuzzy msgid "No return-to arguments." -msgstr "Nenhum argumento de ID." +msgstr "Sem argumentos return-to." #: lib/profileformaction.php:137 msgid "Unimplemented method." -msgstr "" +msgstr "Método não implementado." #: lib/publicgroupnav.php:78 msgid "Public" @@ -5386,45 +5458,39 @@ msgstr "Etiquetas recentes" #: lib/publicgroupnav.php:88 msgid "Featured" -msgstr "Destacada" +msgstr "Em destaque" #: lib/publicgroupnav.php:92 msgid "Popular" msgstr "Popular" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Responder a esta mensagem" +msgstr "Repetir esta mensagem?" #: lib/repeatform.php:132 -#, fuzzy msgid "Repeat this notice" -msgstr "Responder a esta mensagem" +msgstr "Repetir esta mensagem" #: lib/sandboxform.php:67 -#, fuzzy msgid "Sandbox" -msgstr "Recebidas" +msgstr "Isolamento" #: lib/sandboxform.php:78 -#, fuzzy msgid "Sandbox this user" -msgstr "Desbloquear este usuário" +msgstr "Colocar este usuário em isolamento" #: lib/searchaction.php:120 -#, fuzzy msgid "Search site" -msgstr "Procurar" +msgstr "Procurar no site" #: lib/searchaction.php:126 msgid "Keyword(s)" -msgstr "" +msgstr "Palavra(s)-chave" #: lib/searchaction.php:162 -#, fuzzy msgid "Search help" -msgstr "Procurar" +msgstr "Ajuda da procura" #: lib/searchgroupnav.php:80 msgid "People" @@ -5432,15 +5498,15 @@ msgstr "Pessoas" #: lib/searchgroupnav.php:81 msgid "Find people on this site" -msgstr "Procure por pessoas neste site" +msgstr "Encontre pessoas neste site" #: lib/searchgroupnav.php:83 msgid "Find content of notices" -msgstr "Procure no conteúdo das mensagens" +msgstr "Encontre conteúdo de mensagens" #: lib/searchgroupnav.php:85 msgid "Find groups on this site" -msgstr "Procurar por grupos neste site" +msgstr "Encontre grupos neste site" #: lib/section.php:89 msgid "Untitled section" @@ -5448,22 +5514,20 @@ msgstr "Seção sem tÃtulo" #: lib/section.php:106 msgid "More..." -msgstr "" +msgstr "Mais..." #: lib/silenceform.php:67 -#, fuzzy msgid "Silence" -msgstr "Nova mensagem" +msgstr "Silenciar" #: lib/silenceform.php:78 -#, fuzzy msgid "Silence this user" -msgstr "Bloquear usuário" +msgstr "Silenciar este usuário" #: lib/subgroupnav.php:83 #, php-format msgid "People %s subscribes to" -msgstr "Pessoas que %s assina" +msgstr "Assinaturas de %s" #: lib/subgroupnav.php:91 #, php-format @@ -5473,11 +5537,11 @@ msgstr "Assinantes de %s" #: lib/subgroupnav.php:99 #, php-format msgid "Groups %s is a member of" -msgstr "O grupo %s é membro de" +msgstr "Grupos dos quais %s é membro" #: lib/subs.php:52 msgid "Already subscribed!" -msgstr "" +msgstr "Já assinado!" #: lib/subs.php:56 msgid "User has blocked you." @@ -5489,17 +5553,15 @@ msgstr "Não foi possÃvel assinar." #: lib/subs.php:79 msgid "Could not subscribe other to you." -msgstr "Não foi possÃvel fazer com que o outros o sigam." +msgstr "Não foi possÃvel fazer com que outros o assinem." #: lib/subs.php:128 -#, fuzzy msgid "Not subscribed!" -msgstr "Não é seguido!" +msgstr "Não assinado!" #: lib/subs.php:133 -#, fuzzy msgid "Couldn't delete self-subscription." -msgstr "Não foi possÃvel excluir a assinatura." +msgstr "Não foi possÃvel excluir a auto-assinatura." #: lib/subs.php:146 msgid "Couldn't delete subscription." @@ -5508,16 +5570,16 @@ msgstr "Não foi possÃvel excluir a assinatura." #: lib/subscriberspeopleselftagcloudsection.php:48 #: lib/subscriptionspeopleselftagcloudsection.php:48 msgid "People Tagcloud as self-tagged" -msgstr "" +msgstr "Nuvem de etiquetas pessoais definidas pelas próprios usuários" #: lib/subscriberspeopletagcloudsection.php:48 #: lib/subscriptionspeopletagcloudsection.php:48 msgid "People Tagcloud as tagged" -msgstr "" +msgstr "Nuvem de etiquetas pessoais definidas pelos outros usuário" #: lib/subscriptionlist.php:126 msgid "(none)" -msgstr "(nenhum)" +msgstr "(nada)" #: lib/tagcloudsection.php:56 msgid "None" @@ -5529,21 +5591,19 @@ msgstr "Quem mais publica" #: lib/unsandboxform.php:69 msgid "Unsandbox" -msgstr "" +msgstr "Tirar do isolamento" #: lib/unsandboxform.php:80 -#, fuzzy msgid "Unsandbox this user" -msgstr "Desbloquear este usuário" +msgstr "Tirar este usuário do isolamento" #: lib/unsilenceform.php:67 msgid "Unsilence" -msgstr "" +msgstr "Encerrar silenciamento" #: lib/unsilenceform.php:78 -#, fuzzy msgid "Unsilence this user" -msgstr "Desbloquear este usuário" +msgstr "Encerrar o silenciamento deste usuário" #: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137 msgid "Unsubscribe from this user" @@ -5554,91 +5614,86 @@ msgid "Unsubscribe" msgstr "Cancelar" #: lib/userprofile.php:116 -#, fuzzy msgid "Edit Avatar" -msgstr "Avatar" +msgstr "Editar o avatar" #: lib/userprofile.php:236 -#, fuzzy msgid "User actions" -msgstr "Outras opções" +msgstr "Ações do usuário" #: lib/userprofile.php:248 -#, fuzzy msgid "Edit profile settings" -msgstr "Configurações do perfil" +msgstr "Editar as configurações do perfil" #: lib/userprofile.php:249 msgid "Edit" -msgstr "" +msgstr "Editar" #: lib/userprofile.php:272 -#, fuzzy msgid "Send a direct message to this user" -msgstr "Você não pode enviar uma mensagem para esse usuário." +msgstr "Enviar uma mensagem para este usuário." #: lib/userprofile.php:273 -#, fuzzy msgid "Message" -msgstr "Nova mensagem" +msgstr "Mensagem" #: lib/userprofile.php:311 msgid "Moderate" -msgstr "" +msgstr "Moderar" #: lib/util.php:837 msgid "a few seconds ago" -msgstr "segundos atrás" +msgstr "alguns segundos atrás" #: lib/util.php:839 msgid "about a minute ago" -msgstr "1 min atrás" +msgstr "cerca de 1 minuto atrás" #: lib/util.php:841 #, php-format msgid "about %d minutes ago" -msgstr "%d mins atrás" +msgstr "cerca de %d minutos atrás" #: lib/util.php:843 msgid "about an hour ago" -msgstr "1 hora atrás" +msgstr "cerca de 1 hora atrás" #: lib/util.php:845 #, php-format msgid "about %d hours ago" -msgstr "%d horas atrás" +msgstr "cerca de %d horas atrás" #: lib/util.php:847 msgid "about a day ago" -msgstr "1 dia atrás" +msgstr "cerca de 1 dia atrás" #: lib/util.php:849 #, php-format msgid "about %d days ago" -msgstr "%d dias atrás" +msgstr "cerca de %d dias atrás" #: lib/util.php:851 msgid "about a month ago" -msgstr "1 mês atrás" +msgstr "cerca de 1 mês atrás" #: lib/util.php:853 #, php-format msgid "about %d months ago" -msgstr "%d meses atrás" +msgstr "cerca de %d meses atrás" #: lib/util.php:855 msgid "about a year ago" -msgstr "1 ano atrás" +msgstr "cerca de 1 ano atrás" #: lib/webcolor.php:82 -#, fuzzy, php-format +#, php-format msgid "%s is not a valid color!" -msgstr "A URL do site informada não é válida." +msgstr "%s não é uma cor válida!" #: lib/webcolor.php:123 #, php-format msgid "%s is not a valid color! Use 3 or 6 hex chars." -msgstr "" +msgstr "%s não é uma cor válida! Utilize 3 ou 6 caracteres hexadecimais." #: scripts/maildaemon.php:48 msgid "Could not parse message." @@ -5654,4 +5709,4 @@ msgstr "Desculpe-me, mas este não é seu endereço de e-mail para recebimento." #: scripts/maildaemon.php:61 msgid "Sorry, no incoming email allowed." -msgstr "Desculpe-me, mas não é permitido o recebimento de emails." +msgstr "Desculpe-me, mas não é permitido o recebimento de e-mails." diff --git a/locale/ru/LC_MESSAGES/statusnet.po b/locale/ru/LC_MESSAGES/statusnet.po index 6efb236c1..b5301b1ab 100644 --- a/locale/ru/LC_MESSAGES/statusnet.po +++ b/locale/ru/LC_MESSAGES/statusnet.po @@ -10,12 +10,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:44+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:28+0000\n" "Language-Team: Russian\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ru\n" "X-Message-Group: out-statusnet\n" @@ -198,11 +198,11 @@ msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ ваше оформление." msgid "You cannot block yourself!" msgstr "Ð’Ñ‹ не можете заблокировать Ñамого ÑебÑ!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Ðеудача при блокировке пользователÑ." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Ðеудача при разблокировке пользователÑ." @@ -320,32 +320,32 @@ msgid "Could not find target user." msgstr "Ðе удаётÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ целевого пользователÑ." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" "Ð˜Ð¼Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ ÑоÑтоÑÑ‚ÑŒ только из пропиÑных букв и цифр и не иметь пробелов." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Такое Ð¸Ð¼Ñ ÑƒÐ¶Ðµ иÑпользуетÑÑ. Попробуйте какое-нибудь другое." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Ðеверное имÑ." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "URL Главной Ñтраницы неверен." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Полное Ð¸Ð¼Ñ Ñлишком длинное (не больше 255 знаков)." @@ -356,7 +356,7 @@ msgid "Description is too long (max %d chars)." msgstr "Слишком длинное опиÑание (макÑимум %d Ñимволов)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Слишком длинное меÑтораÑположение (макÑимум 255 знаков)." @@ -471,7 +471,7 @@ msgstr "Слишком Ð´Ð»Ð¸Ð½Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ. МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð msgid "Not found" msgstr "Ðе найдено" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° запиÑи — %d Ñимволов, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ URL вложениÑ." @@ -601,7 +601,7 @@ msgid "Preview" msgstr "ПроÑмотр" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Удалить" @@ -614,13 +614,13 @@ msgid "Crop" msgstr "Обрезать" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -693,7 +693,7 @@ msgstr "Да" msgid "Block this user" msgstr "Заблокировать пользователÑ." -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Ðе удаётÑÑ Ñохранить информацию о блокировании." @@ -765,7 +765,7 @@ msgstr "Ðтот Ð°Ð´Ñ€ÐµÑ ÑƒÐ¶Ðµ подтверждён." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ пользователÑ." @@ -827,7 +827,7 @@ msgstr "Ð’Ñ‹ уверены, что хотите удалить Ñту Ð·Ð°Ð¿Ð¸Ñ msgid "Do not delete this notice" msgstr "Ðе удалÑÑ‚ÑŒ Ñту запиÑÑŒ" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Удалить Ñту запиÑÑŒ" @@ -965,7 +965,7 @@ msgstr "ВоÑÑтановить Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1475,7 +1475,7 @@ msgstr "УчаÑтники группы %s, Ñтраница %d" msgid "A list of the users in this group." msgstr "СпиÑок пользователей, ÑвлÑющихÑÑ Ñ‡Ð»ÐµÐ½Ð°Ð¼Ð¸ Ñтой группы." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "ÐаÑтройки" @@ -1573,7 +1573,7 @@ msgstr "Только админиÑтратор может разблокироРmsgid "User is not blocked from group." msgstr "Пользователь не заблокировал Ð²Ð°Ñ Ð¸Ð· группы." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Ошибка при удалении данного блока." @@ -1760,7 +1760,7 @@ msgstr "Личное Ñообщение" msgid "Optionally add a personal message to the invitation." msgstr "Можно добавить к приглашению личное Ñообщение." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "ОК" @@ -1882,7 +1882,7 @@ msgstr "Ðекорректное Ð¸Ð¼Ñ Ð¸Ð»Ð¸ пароль." msgid "Error setting user. You are probably not authorized." msgstr "Ошибка уÑтановки пользователÑ. Ð’Ñ‹, вероÑтно, не авторизованы." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Вход" @@ -1994,7 +1994,7 @@ msgstr "Сообщение отправлено" msgid "Direct message to %s sent" msgstr "ПрÑмое Ñообщение Ð´Ð»Ñ %s поÑлано" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ошибка AJAX" @@ -2002,7 +2002,7 @@ msgstr "Ошибка AJAX" msgid "New notice" msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "ЗапиÑÑŒ опубликована" @@ -2433,71 +2433,80 @@ msgstr "МеÑтораÑположение" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Где вы находитеÑÑŒ, например «Город, облаÑÑ‚ÑŒ, Ñтрана»" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Теги" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Теги Ð´Ð»Ñ Ñамого ÑÐµÐ±Ñ (буквы, цифры, -, ., и _), разделенные запÑтой или " "пробелом" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Язык" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Предпочитаемый Ñзык" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "ЧаÑовой поÑÑ" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Ð’ каком чаÑовом поÑÑе Ð’Ñ‹ обычно находитеÑÑŒ?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "ÐвтоматичеÑки подпиÑыватьÑÑ Ð½Ð° вÑех, кто подпиÑалÑÑ Ð½Ð° менÑ" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Слишком Ð´Ð»Ð¸Ð½Ð½Ð°Ñ Ð±Ð¸Ð¾Ð³Ñ€Ð°Ñ„Ð¸Ñ (макÑимум %d Ñимволов)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "ЧаÑовой поÑÑ Ð½Ðµ выбран." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Слишком длинный Ñзык (более 50 Ñимволов). " -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Ðеверный тег: «%s»" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ð¿Ð¾Ð´Ð¿Ð¸Ñки." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Ðе удаётÑÑ Ñохранить теги." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Ðе удаётÑÑ Ñохранить профиль." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Ðе удаётÑÑ Ñохранить теги." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ÐаÑтройки Ñохранены." @@ -2602,7 +2611,7 @@ msgstr "" "Почему бы не [зарегиÑтрироватьÑÑ](%%action.register%%), чтобы отправить " "первым?" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Облако тегов" @@ -2742,7 +2751,7 @@ msgstr "Извините, неверный приглаÑительный код msgid "Registration successful" msgstr "РегиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ ÑƒÑпешна!" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "РегиÑтрациÑ" @@ -2934,7 +2943,7 @@ msgstr "Ð’Ñ‹ не можете повторить ÑобÑтвенную запРmsgid "You already repeated that notice." msgstr "Ð’Ñ‹ уже повторили Ñту запиÑÑŒ." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Повторено" @@ -4088,16 +4097,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Вам запрещено поÑтитьÑÑ Ð½Ð° Ñтом Ñайте (бан)" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Проблемы Ñ Ñохранением запиÑи." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Ошибка баз данных при вÑтавке ответа Ð´Ð»Ñ %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4152,128 +4161,128 @@ msgstr "%s (%s)" msgid "Untitled page" msgstr "Страница без названиÑ" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Ð“Ð»Ð°Ð²Ð½Ð°Ñ Ð½Ð°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Моё" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Личный профиль и лента друзей" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "ÐаÑтройки" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Изменить ваш email, аватару, пароль, профиль" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Соединить" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Соединить Ñ ÑервиÑами" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Изменить конфигурацию Ñайта" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "ПриглаÑить" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "ПриглаÑи друзей и коллег Ñтать такими же как Ñ‚Ñ‹ учаÑтниками %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Выход" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Выйти" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Создать новый аккаунт" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Войти" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Помощь" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Помощь" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "ПоиÑк" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "ИÑкать людей или текÑÑ‚" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Локальные виды" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "ÐÐ°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð¿Ð¾ подпиÑкам" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "О проекте" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "ЧаВо" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "TOS" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "ПользовательÑкое Ñоглашение" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "ИÑходный код" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "ÐšÐ¾Ð½Ñ‚Ð°ÐºÑ‚Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Бедж" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "StatusNet лицензиÑ" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4282,12 +4291,12 @@ msgstr "" "**%%site.name%%** — Ñто ÑÐµÑ€Ð²Ð¸Ñ Ð¼Ð¸ÐºÑ€Ð¾Ð±Ð»Ð¾Ð³Ð¸Ð½Ð³Ð°, Ñозданный Ð´Ð»Ñ Ð²Ð°Ñ Ð¿Ñ€Ð¸ помощи [%" "%site.broughtby%%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** — ÑÐµÑ€Ð²Ð¸Ñ Ð¼Ð¸ÐºÑ€Ð¾Ð±Ð»Ð¾Ð³Ð¸Ð½Ð³Ð°. " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4299,31 +4308,31 @@ msgstr "" "лицензией [GNU Affero General Public License](http://www.fsf.org/licensing/" "licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Ð›Ð¸Ñ†ÐµÐ½Ð·Ð¸Ñ Ñодержимого Ñайта" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "All " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "license." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Разбиение на Ñтраницы" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Сюда" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Туда" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Проблема Ñ Ð’Ð°ÑˆÐµÐ¹ ÑеÑÑией. Попробуйте ещё раз, пожалуйÑта." @@ -4375,6 +4384,16 @@ msgstr "Сообщает, где поÑвлÑетÑÑ Ñто вложение" msgid "Tags for this attachment" msgstr "Теги Ð´Ð»Ñ Ñтого вложениÑ" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Пароль Ñохранён." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Пароль Ñохранён." + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Команда иÑполнена" @@ -4933,7 +4952,7 @@ msgstr "" #: lib/mail.php:236 #, php-format msgid "%1$s is now listening to your notices on %2$s." -msgstr "%1$s ÑÐµÐ¹Ñ‡Ð°Ñ Ñлушает ваши заметки на %2$s." +msgstr "%1$s теперь Ñледит за вашими запиÑÑми на %2$s." #: lib/mail.php:241 #, php-format @@ -5170,7 +5189,7 @@ msgstr "" "Ð²Ð¾Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… пользователей в разговор. СообщениÑ, получаемые от других " "людей, видите только вы." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "от " @@ -5237,69 +5256,73 @@ msgstr "ПоÑлать прÑмую запиÑÑŒ" msgid "To" msgstr "ДлÑ" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "6 или больше знаков" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "ПоÑлать запиÑÑŒ" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Что нового, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "Прикрепить" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Прикрепить файл" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\" %4$s %5$u°%6$u'%7$u\" %8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "Ñ. ш." -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "ÑŽ. ш." -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "в. д." -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "з. д." -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "на" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "в контекÑте" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Повторено" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Ответить на Ñту запиÑÑŒ" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Ответить" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "ЗапиÑÑŒ повторена" @@ -5429,9 +5452,8 @@ msgid "Popular" msgstr "ПопулÑрное" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Повторить Ñту запиÑÑŒ" +msgstr "Повторить Ñту запиÑÑŒ?" #: lib/repeatform.php:132 msgid "Repeat this notice" diff --git a/locale/statusnet.po b/locale/statusnet.po index 6cb8e5749..44a0d92fc 100644 --- a/locale/statusnet.po +++ b/locale/statusnet.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -184,11 +184,11 @@ msgstr "" msgid "You cannot block yourself!" msgstr "" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -300,31 +300,31 @@ msgid "Could not find target user." msgstr "" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "" #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "" #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "" #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "" @@ -335,7 +335,7 @@ msgid "Description is too long (max %d chars)." msgstr "" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "" @@ -450,7 +450,7 @@ msgstr "" msgid "Not found" msgstr "" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -579,7 +579,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "" @@ -592,13 +592,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -668,7 +668,7 @@ msgstr "" msgid "Block this user" msgstr "" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -740,7 +740,7 @@ msgstr "" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "" @@ -800,7 +800,7 @@ msgstr "" msgid "Do not delete this notice" msgstr "" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "" @@ -934,7 +934,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1416,7 +1416,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1503,7 +1503,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "" @@ -1672,7 +1672,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "" @@ -1768,7 +1768,7 @@ msgstr "" msgid "Error setting user. You are probably not authorized." msgstr "" -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "" @@ -1875,7 +1875,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1883,7 +1883,7 @@ msgstr "" msgid "New notice" msgstr "" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "" @@ -2300,69 +2300,77 @@ msgstr "" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "" + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "" -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "" -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "" @@ -2455,7 +2463,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2591,7 +2599,7 @@ msgstr "" msgid "Registration successful" msgstr "" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "" @@ -2755,7 +2763,7 @@ msgstr "" msgid "You already repeated that notice." msgstr "" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "" @@ -3825,16 +3833,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -3889,140 +3897,140 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." "broughtby%%](%%site.broughtbyurl%%). " msgstr "" -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4030,31 +4038,31 @@ msgid "" "org/licensing/licenses/agpl-3.0.html)." msgstr "" -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4106,6 +4114,14 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +msgid "Password changing failed" +msgstr "" + +#: lib/authenticationplugin.php:197 +msgid "Password changing is not allowed" +msgstr "" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4766,7 +4782,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "" @@ -4830,69 +4846,73 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "" diff --git a/locale/sv/LC_MESSAGES/statusnet.po b/locale/sv/LC_MESSAGES/statusnet.po index ee58dff05..9d1e7b9c6 100644 --- a/locale/sv/LC_MESSAGES/statusnet.po +++ b/locale/sv/LC_MESSAGES/statusnet.po @@ -9,12 +9,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:47+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:32+0000\n" "Language-Team: Swedish\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: sv\n" "X-Message-Group: out-statusnet\n" @@ -196,11 +196,11 @@ msgstr "Kunde inte uppdatera din profils utseende." msgid "You cannot block yourself!" msgstr "Du kan inte blockera dig själv!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Blockering av användare misslyckades." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Hävning av blockering av användare misslyckades." @@ -312,32 +312,32 @@ msgid "Could not find target user." msgstr "" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" "Smeknamnet fÃ¥r endast innehÃ¥lla smÃ¥ bokstäver eller siffror, inga mellanslag." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Smeknamnet används redan. Försök med ett annat." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Inte ett giltigt smeknamn." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Hemsida är inte en giltig URL." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Fullständigt namn är för lÃ¥ngt (max 255 tecken)." @@ -348,7 +348,7 @@ msgid "Description is too long (max %d chars)." msgstr "Beskrivning är för lÃ¥ng (max 140 tecken)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Beskrivning av plats är för lÃ¥ng (max 255 tecken)." @@ -463,7 +463,7 @@ msgstr "Det är för lÃ¥ngt. Maximal notisstorlek är %d tecken." msgid "Not found" msgstr "Hittades inte" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "Maximal notisstorlek är %d tecken, inklusive bilage-URL." @@ -593,7 +593,7 @@ msgid "Preview" msgstr "Förhandsgranska" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Ta bort" @@ -606,13 +606,13 @@ msgid "Crop" msgstr "Beskär" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -685,7 +685,7 @@ msgstr "Ja" msgid "Block this user" msgstr "Blockera denna användare" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Misslyckades att spara blockeringsinformation." @@ -758,7 +758,7 @@ msgstr "Denna adress har redan blivit bekräftad." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Kunde inte uppdatera användare." @@ -820,7 +820,7 @@ msgstr "Är du säker pÃ¥ att du vill ta bort denna notis?" msgid "Do not delete this notice" msgstr "Ta inte bort denna notis" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Ta bort denna notis" @@ -958,7 +958,7 @@ msgstr "Ã…terställ till standardvärde" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1456,7 +1456,7 @@ msgstr "%s gruppmedlemmar, sida %d" msgid "A list of the users in this group." msgstr "En lista av användarna i denna grupp." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Administratör" @@ -1555,7 +1555,7 @@ msgstr "Bara en administratör kan häva blockering av gruppmedlemmar." msgid "User is not blocked from group." msgstr "Användare är inte blockerad frÃ¥n grupp." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Fel vid hävning av blockering." @@ -1741,7 +1741,7 @@ msgstr "Personligt meddelande" msgid "Optionally add a personal message to the invitation." msgstr "Om du vill, skriv ett personligt meddelande till inbjudan." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Skicka" @@ -1837,7 +1837,7 @@ msgstr "Felaktigt användarnamn eller lösenord." msgid "Error setting user. You are probably not authorized." msgstr "Fel vid inställning av användare. Du har sannolikt inte tillstÃ¥nd." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Logga in" @@ -1950,7 +1950,7 @@ msgstr "Meddelande skickat" msgid "Direct message to %s sent" msgstr "Direktmeddelande till %s skickat" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "AJAX-fel" @@ -1958,7 +1958,7 @@ msgstr "AJAX-fel" msgid "New notice" msgstr "Ny notis" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Notis postad" @@ -2387,72 +2387,81 @@ msgstr "Plats" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Var du hÃ¥ller till, sÃ¥som \"Stad, Län, Land\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Taggar" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Taggar för dig själv (bokstäver, nummer, -, ., och _), separerade med " "kommatecken eller mellanslag" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "SprÃ¥k" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Föredraget sprÃ¥k" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Tidszon" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "I vilken tidszon befinner du dig normalt?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Prenumerera automatiskt pÃ¥ den prenumererar pÃ¥ mig (bäst för icke-människa) " -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Biografin är för lÃ¥ng (max %d tecken)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "Tidszon inte valt." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "SprÃ¥knamn är för lÃ¥ngt (max 50 tecken)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "Ogiltig tagg: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Kunde inte uppdatera användaren för automatisk prenumeration." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Kunde inte spara taggar." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Kunde inte spara profil." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Kunde inte spara taggar." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Inställningar sparade." @@ -2558,7 +2567,7 @@ msgstr "" "Varför inte [registrera ett konto](%%action.register%%) och bli först att " "posta en!" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Taggmoln" @@ -2699,7 +2708,7 @@ msgstr "Ledsen, ogiltig inbjudningskod." msgid "Registration successful" msgstr "Registreringen genomförd" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Registrera" @@ -2879,7 +2888,7 @@ msgstr "Du kan inte upprepa din egna notis." msgid "You already repeated that notice." msgstr "Du har redan upprepat denna notis." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "Upprepad" @@ -4018,16 +4027,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Du är utestängd frÃ¥n att posta notiser pÃ¥ denna webbplats." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Problem med att spara notis." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Databasfel vid infogning av svar: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4082,128 +4091,128 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "Namnlös sida" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Primär webbplatsnavigation" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Hem" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "Personlig profil och vänners tidslinje" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Konto" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Ändra din e-post, avatar, lösenord, profil" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Anslut" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Anslut till tjänster" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Ändra webbplatskonfiguration" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "Bjud in" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "Bjud in vänner och kollegor att gÃ¥ med dig pÃ¥ %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Logga ut" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Logga ut frÃ¥n webbplatsen" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Skapa ett konto" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Logga in pÃ¥ webbplatsen" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Hjälp" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Hjälp mig!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Sök" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Sök efter personer eller text" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Webbplatsnotis" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "Lokala vyer" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Sidnotis" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "Sekundär webbplatsnavigation" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Om" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FrÃ¥gor & svar" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "Användarvillkor" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Sekretess" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Källa" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Kontakt" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Emblem" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Programvarulicens för StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4212,12 +4221,12 @@ msgstr "" "**%%site.name%%** är en mikrobloggtjänst tillhandahÃ¥llen av [%%site.broughtby" "%%](%%site.broughtbyurl%%)" -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** är en mikrobloggtjänst." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4228,31 +4237,31 @@ msgstr "" "version %s, tillgänglig under [GNU Affero General Public License](http://www." "fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Licens för webbplatsinnehÃ¥ll" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Alla " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "licens." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "Numrering av sidor" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Senare" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Tidigare" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Det var ett problem med din sessions-token." @@ -4304,6 +4313,16 @@ msgstr "Notiser där denna bilaga förekommer" msgid "Tags for this attachment" msgstr "Taggar för denna billaga" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Byte av lösenord" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Byte av lösenord" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Resultat av kommando" @@ -4983,7 +5002,7 @@ msgstr "" "engagera andra användare i konversationen. Folk kan skicka meddelanden till " "dig som bara du ser." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "frÃ¥n" @@ -5051,69 +5070,73 @@ msgstr "Skicka ett direktinlägg" msgid "To" msgstr "Till" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "Tillgängliga tecken" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "Skicka ett inlägg" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Vad är pÃ¥ gÃ¥ng, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "Bifoga" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "Bifoga en fil" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "N" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "S" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "Ö" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "V" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "pÃ¥" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "i sammanhang" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Upprepad av" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "Svara pÃ¥ detta inlägg" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Svara" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Notis upprepad" diff --git a/locale/te/LC_MESSAGES/statusnet.po b/locale/te/LC_MESSAGES/statusnet.po index 211d47108..028e60c47 100644 --- a/locale/te/LC_MESSAGES/statusnet.po +++ b/locale/te/LC_MESSAGES/statusnet.po @@ -8,12 +8,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:51+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:35+0000\n" "Language-Team: Telugu\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: te\n" "X-Message-Group: out-statusnet\n" @@ -190,11 +190,11 @@ msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à± msgid "You cannot block yourself!" msgstr "మిమà±à°®à°²à±à°¨à°¿ మీరే నిరోధించà±à°•à±‹à°²à±‡à°°à±!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "వాడà±à°•à°°à°¿ నిరోధం విఫలమైంది." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -308,31 +308,31 @@ msgid "Could not find target user." msgstr "లకà±à°·à±à°¯à°¿à°¤ వాడà±à°•à°°à°¿à°¨à°¿ à°•à°¨à±à°—ొనలేకపోయాం." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "పేరà±à°²à±‹ à°šà°¿à°¨à±à°¨à°¬à°¡à°¿ à°…à°•à±à°·à°°à°¾à°²à± మరియౠఅంకెలౠమాతà±à°°à°®à±‡ ఖాళీలౠలేకà±à°‚à°¡à°¾ ఉండాలి." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "à°† పేరà±à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ వాడà±à°¤à±à°¨à±à°¨à°¾à°°à±. మరోటి à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚à°šà°‚à°¡à°¿." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "సరైన పేరౠకాదà±." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "హోమౠపేజీ URL సరైనది కాదà±." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "పూరà±à°¤à°¿ పేరౠచాలా పెదà±à°¦à°—à°¾ ఉంది (à°—à°°à°¿à°·à±à° à°‚à°—à°¾ 255 à°…à°•à±à°·à°°à°¾à°²à±)." @@ -343,7 +343,7 @@ msgid "Description is too long (max %d chars)." msgstr "వివరణ చాలా పెదà±à°¦à°—à°¾ ఉంది (%d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "à°ªà±à°°à°¾à°‚తం పేరౠమరీ పెదà±à°¦à°—à°¾ ఉంది (255 à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)." @@ -460,7 +460,7 @@ msgstr "అది చాలా పొడవà±à°‚ది. à°—à°°à°¿à°·à±à° à°¨à msgid "Not found" msgstr "దొరకలేదà±" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "à°—à°°à°¿à°·à±à° నోటీసౠపొడవౠ%d à°…à°•à±à°·à°°à°¾à°²à±, జోడింపౠURLని à°•à°²à±à°ªà±à°•à±à°¨à°¿." @@ -590,7 +590,7 @@ msgid "Preview" msgstr "à°®à±à°¨à±à°œà±‚à°ªà±" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "తొలగించà±" @@ -603,13 +603,13 @@ msgid "Crop" msgstr "à°•à°¤à±à°¤à°¿à°°à°¿à°‚à°šà±" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -679,7 +679,7 @@ msgstr "à°…à°µà±à°¨à±" msgid "Block this user" msgstr "à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించà±" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "నిరోధపౠసమాచారానà±à°¨à°¿ à°à°¦à±à°°à°ªà°°à°šà°¡à°‚లో విఫలమయà±à°¯à°¾à°‚." @@ -754,7 +754,7 @@ msgstr "à°† à°šà°¿à°°à±à°¨à°¾à°®à°¾ ఇపà±à°ªà°Ÿà°¿à°•à±‡ నిరà±à°§à°¾ #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚." @@ -814,7 +814,7 @@ msgstr "మీరౠనిజంగానే à°ˆ నోటీసà±à°¨à°¿ తౠmsgid "Do not delete this notice" msgstr "à°ˆ నోటీసà±à°¨à°¿ తొలగించకà±" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "à°ˆ నోటీసà±à°¨à°¿ తొలగించà±" @@ -950,7 +950,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1410,16 +1410,15 @@ msgstr "మీ à°—à±à°‚à°ªà±à°•à°¿ మీరౠఒక à°šà°¿à°¹à±à°¨à°¾à°¨à± #: actions/grouplogo.php:362 msgid "Pick a square area of the image to be the logo." -msgstr "" +msgstr "à°šà°¿à°¹à±à°¨à°‚à°—à°¾ ఉండాలà±à°¸à°¿à°¨ à°šà°¤à±à°°à°¸à±à°¤à±à°° à°ªà±à°°à°¦à±‡à°¶à°¾à°¨à±à°¨à°¿ బొమà±à°® à°¨à±à°‚à°¡à°¿ à°Žà°‚à°šà±à°•à±‹à°‚à°¡à°¿." #: actions/grouplogo.php:396 msgid "Logo updated." msgstr "à°šà°¿à°¹à±à°¨à°¾à°¨à±à°¨à°¿ తాజాకరించాం." #: actions/grouplogo.php:398 -#, fuzzy msgid "Failed updating logo." -msgstr "అవతారపౠతాజాకరణ విఫలమైంది." +msgstr "à°šà°¿à°¹à±à°¨à°ªà± తాజాకరణ విఫలమైంది." #: actions/groupmembers.php:93 lib/groupnav.php:92 #, php-format @@ -1435,7 +1434,7 @@ msgstr "%s à°—à±à°‚పౠసà°à±à°¯à±à°²à±, పేజీ %d" msgid "A list of the users in this group." msgstr "à°ˆ à°—à±à°‚à°ªà±à°²à±‹ వాడà±à°•à°°à±à°²à± జాబితా." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1525,7 +1524,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "వాడà±à°•à°°à°¿à°¨à°¿ à°—à±à°‚పౠనà±à°‚à°¡à°¿ నిరోధించలేదà±." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "నిరోధానà±à°¨à°¿ తొలగించడంలో పొరపాటà±." @@ -1694,7 +1693,7 @@ msgstr "à°µà±à°¯à°•à±à°¤à°¿à°—à°¤ సందేశం" msgid "Optionally add a personal message to the invitation." msgstr "à°à°šà±à°›à°¿à°•à°‚à°—à°¾ ఆహà±à°µà°¾à°¨à°¾à°¨à°¿à°•à°¿ à°µà±à°¯à°•à±à°¤à°¿à°—à°¤ సందేశం చేరà±à°šà°‚à°¡à°¿." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "పంపించà±" @@ -1791,7 +1790,7 @@ msgstr "వాడà±à°•à°°à°¿à°ªà±‡à°°à± లేదా సంకేతపదం msgid "Error setting user. You are probably not authorized." msgstr "" -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿" @@ -1901,7 +1900,7 @@ msgstr "సందేశానà±à°¨à°¿ పంపించాం" msgid "Direct message to %s sent" msgstr "%sà°•à°¿ నేరౠసందేశానà±à°¨à°¿ పంపించాం" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "అజాకà±à°¸à± పొరపాటà±" @@ -1909,7 +1908,7 @@ msgstr "అజాకà±à°¸à± పొరపాటà±" msgid "New notice" msgstr "కొతà±à°¤ సందేశం" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 #, fuzzy msgid "Notice posted" msgstr "సందేశాలà±" @@ -2192,9 +2191,8 @@ msgid "Avatar path" msgstr "అవతారానà±à°¨à°¿ తాజాకరించాం." #: actions/pathsadminpanel.php:265 -#, fuzzy msgid "Avatar directory" -msgstr "అవతారానà±à°¨à°¿ తొలగించాం." +msgstr "అవతారాల సంచయం" #: actions/pathsadminpanel.php:274 msgid "Backgrounds" @@ -2342,69 +2340,78 @@ msgstr "à°ªà±à°°à°¾à°‚తం" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "మీరౠఎకà±à°•à°¡ à°¨à±à°‚à°¡à°¿, \"నగరం, రాషà±à°Ÿà±à°°à°‚ (లేదా à°ªà±à°°à°¾à°‚తం), దేశం\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "à°Ÿà±à°¯à°¾à°—à±à°²à±" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "à°à°¾à°·" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "à°ªà±à°°à°¾à°¥à°¾à°¨à±à°¯à°¤à°¾ à°à°¾à°·" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "కాలమండలం" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "మీరౠసామానà±à°¯à°‚à°—à°¾ ఉండే కాలమండలం à°à°¦à°¿?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "à°¸à±à°µà°ªà°°à°¿à°šà°¯à°‚ చాలా పెదà±à°¦à°—à°¾ ఉంది (%d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "కాలమండలానà±à°¨à°¿ à°Žà°‚à°šà±à°•à±‹à°²à±‡à°¦à±." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "à°à°¾à°· మరీ పెదà±à°¦à°—à°¾ ఉంది (50 à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "'%s' అనే హోమౠపేజీ సరైనదికాదà±" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "à°Ÿà±à°¯à°¾à°—à±à°²à°¨à°¿ à°à°¦à±à°°à°ªà°°à°šà°²à±‡à°•à±à°¨à±à°¨à°¾à°‚." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "à°ªà±à°°à±Šà°«à±ˆà°²à±à°¨à°¿ à°à°¦à±à°°à°ªà°°à°šà°²à±‡à°•à±à°¨à±à°¨à°¾à°‚." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "à°Ÿà±à°¯à°¾à°—à±à°²à°¨à°¿ à°à°¦à±à°°à°ªà°°à°šà°²à±‡à°•à±à°¨à±à°¨à°¾à°‚." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "అమరికలౠà°à°¦à±à°°à°®à°¯à±à°¯à°¾à°¯à°¿." @@ -2501,7 +2508,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "à°Ÿà±à°¯à°¾à°—ౠమేఘం" @@ -2638,7 +2645,7 @@ msgstr "à°•à±à°·à°®à°¿à°‚à°šà°‚à°¡à°¿, తపà±à°ªà± ఆహà±à°µà°¾à°¨ సఠmsgid "Registration successful" msgstr "నమోదౠవిజయవంతం" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "నమోదà±" @@ -2806,7 +2813,7 @@ msgstr "à°ˆ లైసెనà±à°¸à±à°•à°¿ అంగీకరించకపోà msgid "You already repeated that notice." msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°† వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించారà±." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "సృషà±à°Ÿà°¿à°¤à°‚" @@ -3258,7 +3265,7 @@ msgstr "ఆహà±à°µà°¾à°¨à°¿à°¤à±à°²à°•à± మాతà±à°°à°®à±‡" #: actions/siteadminpanel.php:329 msgid "Make registration invitation only." -msgstr "" +msgstr "ఆహà±à°µà°¾à°¨à°¿à°¤à±à°²à± మాతà±à°°à°®à±‡ నమోదౠఅవà±à°µà°—లిగేలా చెయà±à°¯à°¿." #: actions/siteadminpanel.php:333 #, fuzzy @@ -3291,7 +3298,7 @@ msgstr "" #: actions/siteadminpanel.php:353 msgid "Frequency" -msgstr "" +msgstr "తరచà±à°¦à°¨à°‚" #: actions/siteadminpanel.php:354 msgid "Snapshots will be sent once every N web hits" @@ -3349,7 +3356,7 @@ msgstr "" #: actions/smssettings.php:123 msgid "Awaiting confirmation on this phone number." -msgstr "" +msgstr "à°ˆ ఫోనౠనంబరౠయొకà±à°• నిరà±à°§à°¾à°°à°£à°•à±ˆ వేచివà±à°‚ది." #: actions/smssettings.php:130 msgid "Confirmation code" @@ -3901,16 +3908,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "à°ˆ సైటà±à°²à±‹ నోటీసà±à°²à± రాయడం à°¨à±à°‚à°¡à°¿ మిమà±à°®à°²à±à°¨à°¿ నిషేధించారà±." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "సందేశానà±à°¨à°¿ à°à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -3967,132 +3974,132 @@ msgstr "%s - %s" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "à°®à±à°‚గిలి" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "ఖాతా" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "మీ ఈమెయిలà±, అవతారం, సంకేతపదం మరియౠపà±à°°à±Œà°«à±ˆà°³à±à°³à°¨à± మారà±à°šà±à°•à±‹à°‚à°¡à°¿" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "à°…à°¨à±à°¸à°‚ధానించà±" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "చందాలà±" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "ఆహà±à°µà°¾à°¨à°¿à°‚à°šà±" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "నిషà±à°•à±à°°à°®à°¿à°‚à°šà±" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "సైటౠనà±à°‚à°¡à°¿ నిషà±à°•à±à°°à°®à°¿à°‚à°šà±" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "కొతà±à°¤ ఖాతా సృషà±à°Ÿà°¿à°‚à°šà±" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "సైటà±à°²à±‹à°¨à°¿ à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà±" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "సహాయం" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "సహాయం కావాలి!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "వెతà±à°•à±" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "కొతà±à°¤ సందేశం" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "à°¸à±à°¥à°¾à°¨à°¿à°• వీకà±à°·à°£à°²à±" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "కొతà±à°¤ సందేశం" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "చందాలà±" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "à°—à±à°°à°¿à°‚à°šà°¿" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "à°ªà±à°°à°¶à±à°¨à°²à±" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "సేవా నియమాలà±" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "అంతరంగికత" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "మూలమà±" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "సంపà±à°°à°¦à°¿à°‚à°šà±" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "బాడà±à°œà°¿" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4101,12 +4108,12 @@ msgstr "" "**%%site.name%%** అనేది [%%site.broughtby%%](%%site.broughtbyurl%%) వారౠ" "అందిసà±à°¤à±à°¨à±à°¨ మైకà±à°°à±‹ à°¬à±à°²à°¾à°—ింగౠసదà±à°ªà°¾à°¯à°‚. " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** అనేది మైకà±à°°à±‹ à°¬à±à°²à°¾à°—ింగౠసదà±à°ªà°¾à°¯à°‚." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4117,38 +4124,38 @@ msgstr "" "html) à°•à°¿à°‚à°¦ à°²à°à±à°¯à°®à°¯à±à°¯à±‡ [à°¸à±à°Ÿà±‡à°Ÿà°¸à±‌నెటà±](http://status.net/) మైకà±à°°à±‹à°¬à±à°²à°¾à°—ింగౠఉపకరణం సంచిక %s " "పై నడà±à°¸à±à°¤à±à°‚ది." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "కొతà±à°¤ సందేశం" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "à°…à°¨à±à°¨à±€ " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "పేజీకరణ" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "తరà±à°µà°¾à°¤" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "ఇంతకà±à°°à°¿à°¤à°‚" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" #: lib/adminpanelaction.php:96 msgid "You cannot make changes to this site." -msgstr "" +msgstr "à°ˆ సైటà±à°•à°¿ మీరౠమారà±à°ªà±à°²à± చేయలేరà±." #: lib/adminpanelaction.php:195 msgid "showForm() not implemented." @@ -4197,6 +4204,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "సంకేతపదం మారà±à°ªà±" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "సంకేతపదం మారà±à°ªà±" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "ఆదేశ ఫలితాలà±" @@ -4326,7 +4343,7 @@ msgstr "" #: lib/command.php:563 #, php-format msgid "Subscribed to %s" -msgstr "" +msgstr "%sà°•à°¿ చందా చేరారà±" #: lib/command.php:584 msgid "Specify the name of the user to unsubscribe from" @@ -4874,7 +4891,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "à°¨à±à°‚à°¡à°¿" @@ -4939,71 +4956,75 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "à°…à°‚à°¦à±à°¬à°¾à°Ÿà±à°²à±‹ ఉనà±à°¨ à°…à°•à±à°·à°°à°¾à°²à±" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "కొతà±à°¤ సందేశం" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "%s, సంగతà±à°²à±‡à°®à°¿à°Ÿà°¿?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "జోడించà±" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "à°’à°• ఫైలà±à°¨à°¿ జోడించà±" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "à°‰" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "à°¦" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "తూ" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "à°ª" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "సందరà±à°à°‚లో" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "సృషà±à°Ÿà°¿à°¤à°‚" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "à°ˆ నోటీసà±à°ªà±ˆ à°¸à±à°ªà°‚దించండి" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "à°¸à±à°ªà°‚దించండి" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "నోటీసà±à°¨à°¿ తొలగించాం." diff --git a/locale/tr/LC_MESSAGES/statusnet.po b/locale/tr/LC_MESSAGES/statusnet.po index 625341611..8d8cbbfd8 100644 --- a/locale/tr/LC_MESSAGES/statusnet.po +++ b/locale/tr/LC_MESSAGES/statusnet.po @@ -8,12 +8,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:54+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:43+0000\n" "Language-Team: Turkish\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: tr\n" "X-Message-Group: out-statusnet\n" @@ -193,11 +193,11 @@ msgstr "Kullanıcı güncellenemedi." msgid "You cannot block yourself!" msgstr "Kullanıcı güncellenemedi." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -313,7 +313,7 @@ msgid "Could not find target user." msgstr "Kullanıcı güncellenemedi." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -321,25 +321,25 @@ msgstr "" "kullanılamaz. " #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Takma ad kullanımda. BaÅŸka bir tane deneyin." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Geçersiz bir takma ad." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "BaÅŸlangıç sayfası adresi geçerli bir URL deÄŸil." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Tam isim çok uzun (azm: 255 karakter)." @@ -350,7 +350,7 @@ msgid "Description is too long (max %d chars)." msgstr "Hakkında bölümü çok uzun (azm 140 karakter)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Yer bilgisi çok uzun (azm: 255 karakter)." @@ -472,7 +472,7 @@ msgstr "" msgid "Not found" msgstr "" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -605,7 +605,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "" @@ -618,13 +618,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -699,7 +699,7 @@ msgstr "" msgid "Block this user" msgstr "Böyle bir kullanıcı yok." -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -775,7 +775,7 @@ msgstr "O adres daha önce onaylanmış." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Kullanıcı güncellenemedi." @@ -837,7 +837,7 @@ msgstr "" msgid "Do not delete this notice" msgstr "Böyle bir durum mesajı yok." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "" @@ -984,7 +984,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1488,7 +1488,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1582,7 +1582,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "Kullanıcının profili yok." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "Kullanıcıyı kaydetmede hata oluÅŸtu." @@ -1762,7 +1762,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Gönder" @@ -1862,7 +1862,7 @@ msgstr "Yanlış kullanıcı adı veya parola." msgid "Error setting user. You are probably not authorized." msgstr "YetkilendirilmemiÅŸ." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "GiriÅŸ" @@ -1975,7 +1975,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1983,7 +1983,7 @@ msgstr "" msgid "New notice" msgstr "Yeni durum mesajı" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 #, fuzzy msgid "Notice posted" msgstr "Durum mesajları" @@ -2427,70 +2427,79 @@ msgstr "Yer" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "BulunduÄŸunuz yer, \"Åžehir, Eyalet (veya Bölge), Ãœlke\" gibi" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "Hakkında bölümü çok uzun (azm 140 karakter)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "%s Geçersiz baÅŸlangıç sayfası" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Profil kaydedilemedi." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Profil kaydedilemedi." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "Profil kaydedilemedi." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Ayarlar kaydedildi." @@ -2587,7 +2596,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2726,7 +2735,7 @@ msgstr "Onay kodu hatası." msgid "Registration successful" msgstr "" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Kayıt" @@ -2899,7 +2908,7 @@ msgstr "EÄŸer lisansı kabul etmezseniz kayıt olamazsınız." msgid "You already repeated that notice." msgstr "Zaten giriÅŸ yapmış durumdasıznız!" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Yarat" @@ -4017,16 +4026,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Durum mesajını kaydederken hata oluÅŸtu." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Cevap eklenirken veritabanı hatası: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4085,136 +4094,136 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "BaÅŸlangıç" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "Hakkında" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "BaÄŸlan" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Sunucuya yönlendirme yapılamadı: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Abonelikler" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Çıkış" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "Yeni hesap oluÅŸtur" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Yardım" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "Yardım" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Ara" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "Yeni durum mesajı" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "Yeni durum mesajı" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "Abonelikler" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Hakkında" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "SSS" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Gizlilik" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Kaynak" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Ä°letiÅŸim" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4223,12 +4232,12 @@ msgstr "" "**%%site.name%%** [%%site.broughtby%%](%%site.broughtbyurl%%)\" tarafından " "hazırlanan anında mesajlaÅŸma ağıdır. " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** bir aninda mesajlaÅŸma sosyal ağıdır." -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4239,34 +4248,34 @@ msgstr "" "licenses/agpl-3.0.html) lisansı ile korunan [StatusNet](http://status.net/) " "microbloglama yazılımının %s. versiyonunu kullanmaktadır." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "Yeni durum mesajı" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 #, fuzzy msgid "After" msgstr "« Sonra" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "Önce »" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4322,6 +4331,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Parola kaydedildi." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Parola kaydedildi." + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -5008,7 +5027,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "" @@ -5073,74 +5092,78 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "6 veya daha fazla karakter" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "Yeni durum mesajı" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "N'aber %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "İçerik yok!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Yarat" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 #, fuzzy msgid "Reply" msgstr "cevapla" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Durum mesajları" diff --git a/locale/uk/LC_MESSAGES/statusnet.po b/locale/uk/LC_MESSAGES/statusnet.po index ad2f107e9..228202cc8 100644 --- a/locale/uk/LC_MESSAGES/statusnet.po +++ b/locale/uk/LC_MESSAGES/statusnet.po @@ -2,6 +2,7 @@ # # Author@translatewiki.net: AS # Author@translatewiki.net: Boogie +# Author@translatewiki.net: Prima klasy4na # -- # This file is distributed under the same license as the StatusNet package. # @@ -9,12 +10,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:57+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:46+0000\n" "Language-Team: Ukrainian\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: uk\n" "X-Message-Group: out-statusnet\n" @@ -197,11 +198,11 @@ msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ Ваш дизайн." msgid "You cannot block yourself!" msgstr "Ви не можете блокувати Ñамого Ñебе!" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "Спроба заблокувати кориÑтувача невдала." -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "Спроба розблокувати кориÑтувача невдала." @@ -314,7 +315,7 @@ msgid "Could not find target user." msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ цільового кориÑтувача." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "" @@ -322,25 +323,25 @@ msgstr "" "інтервалів." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Це Ñ–Ð¼â€™Ñ Ð²Ð¶Ðµ викориÑтовуєтьÑÑ. Спробуйте інше." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Це недійÑне Ñ–Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Веб-Ñторінка має недійÑну URL-адреÑу." #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Повне Ñ–Ð¼â€™Ñ Ð·Ð°Ð´Ð¾Ð²Ð³Ðµ (255 знаків макÑимум)" @@ -351,7 +352,7 @@ msgid "Description is too long (max %d chars)." msgstr "ÐžÐ¿Ð¸Ñ Ð½Ð°Ð´Ñ‚Ð¾ довгий (%d знаків макÑимум)." #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Ð›Ð¾ÐºÐ°Ñ†Ñ–Ñ Ð½Ð°Ð´Ñ‚Ð¾ довга (255 знаків макÑимум)." @@ -466,7 +467,7 @@ msgstr "Ðадто довго. МакÑимальний розмір допиÑÑ msgid "Not found" msgstr "Ðе знайдено" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -597,7 +598,7 @@ msgid "Preview" msgstr "ПереглÑд" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "Видалити" @@ -610,13 +611,13 @@ msgid "Crop" msgstr "Ð’Ñ‚Ñти" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -690,7 +691,7 @@ msgstr "Так" msgid "Block this user" msgstr "Блокувати кориÑтувача" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "Ð—Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ— про Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐ¸Ð»Ð¾ÑÑŒ невдачею." @@ -762,7 +763,7 @@ msgstr "Цю адреÑу вже було підтверджено." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ кориÑтувача." @@ -822,7 +823,7 @@ msgstr "Ви впевненні, що бажаєте видалити цей дРmsgid "Do not delete this notice" msgstr "Ðе видалÑти цей допиÑ" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "Видалити допиÑ" @@ -961,7 +962,7 @@ msgstr "ПовернутиÑÑŒ до початкових налаштувань" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1459,7 +1460,7 @@ msgstr "УчаÑники групи %s, Ñторінка %d" msgid "A list of the users in this group." msgstr "СпиÑок учаÑників цієї групи." -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "Ðдмін" @@ -1558,7 +1559,7 @@ msgstr "Лише адміни можуть розблокувати членів msgid "User is not blocked from group." msgstr "КориÑтувача не блоковано." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 msgid "Error removing the block." msgstr "Помилка при розблокуванні." @@ -1745,7 +1746,7 @@ msgstr "ОÑобиÑÑ‚Ñ– повідомленнÑ" msgid "Optionally add a personal message to the invitation." msgstr "Можна додати перÑональне Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ Ð·Ð°Ð¿Ñ€Ð¾ÑˆÐµÐ½Ð½Ñ (опціонально)." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Так!" @@ -1868,7 +1869,7 @@ msgstr "Ðеточне Ñ–Ð¼â€™Ñ Ð°Ð±Ð¾ пароль." msgid "Error setting user. You are probably not authorized." msgstr "Помилка. Можливо, Ви не авторизовані." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Увійти" @@ -1983,7 +1984,7 @@ msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð´Ñ–Ñлано" msgid "Direct message to %s sent" msgstr "ПрÑме Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ %s надіÑлано" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Помилка в Ajax" @@ -1991,7 +1992,7 @@ msgstr "Помилка в Ajax" msgid "New notice" msgstr "Ðовий допиÑ" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð½Ð°Ð´Ñ–Ñлано" @@ -2423,72 +2424,80 @@ msgstr "ЛокаціÑ" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Де Ви живете, штибу \"МіÑто, облаÑÑ‚ÑŒ (регіон), країна\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "Показувати мою поточну локацію при надÑиланні допиÑів" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Теґи" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" "Позначте Ñебе теґами (літери, цифри, -, . та _), відокремлюючи кожен комою " "або пробілом" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Мова" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Мова, котрій надаєте перевагу" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "ЧаÑовий поÑÑ" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "За Ñким чаÑовим поÑÑом Ви живете?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" "Ðвтоматично підпиÑуватиÑÑŒ до тих, хто підпиÑавÑÑ Ð´Ð¾ мене. (Слава роботам!)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, php-format msgid "Bio is too long (max %d chars)." msgstr "Ви перевищили ліміт (%d знаків макÑимум)." -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "ЧаÑовий поÑÑ Ð½Ðµ обрано." -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "Мова задовга (50 знаків макÑимум)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, php-format msgid "Invalid tag: \"%s\"" msgstr "ÐедійÑний теґ: \"%s\"" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ кориÑтувача Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ð¿Ñ–Ð´Ð¿Ð¸Ñки." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +msgid "Couldn't save location prefs." +msgstr "Ðе вдалоÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Ðе вдалоÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ профіль." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 msgid "Couldn't save tags." msgstr "Ðе вдалоÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ теґи." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð¾." @@ -2594,7 +2603,7 @@ msgstr "" "Чому б не [зареєÑтруватиÑÑŒ](%%%%action.register%%%%) Ñ– не напиÑати щоÑÑŒ " "цікаве!" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "Хмарка теґів" @@ -2736,7 +2745,7 @@ msgstr "Даруйте, помилка у коді запрошеннÑ." msgid "Registration successful" msgstr "РеєÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ ÑƒÑпішна" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "РеєÑтраціÑ" @@ -2927,7 +2936,7 @@ msgstr "Ви не можете вторувати Ñвоїм влаÑним до msgid "You already repeated that notice." msgstr "Ви вже вторували цьому допиÑу." -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 msgid "Repeated" msgstr "ВторуваннÑ" @@ -4078,16 +4087,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "Вам заборонено надÑилати допиÑи до цього Ñайту." -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Проблема при збереженні допиÑу." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Помилка бази даних при додаванні відповіді: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "RT @%1$s %2$s" @@ -4142,128 +4151,128 @@ msgstr "%s — %s" msgid "Untitled page" msgstr "Сторінка без заголовку" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "Відправна Ð½Ð°Ð²Ñ–Ð³Ð°Ñ†Ñ–Ñ Ð¿Ð¾ Ñайту" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Дім" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "ПерÑональний профіль Ñ– Ñтрічка друзів" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "Ðкаунт" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "Змінити електронну адреÑу, аватару, пароль, профіль" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "З’єднаннÑ" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect to services" msgstr "Ð—â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· ÑервіÑами" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "Змінити конфігурацію Ñайту" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "ЗапроÑити" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "ЗапроÑÑ–Ñ‚ÑŒ друзів та колег приєднатиÑÑŒ до Ð’Ð°Ñ Ð½Ð° %s" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Вийти" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "Вийти з Ñайту" -#: lib/action.php:455 +#: lib/action.php:456 msgid "Create an account" msgstr "Створити новий акаунт" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "Увійти на Ñайт" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "Допомога" -#: lib/action.php:461 +#: lib/action.php:462 msgid "Help me!" msgstr "Допоможіть!" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Пошук" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "Пошук людей або текÑтів" -#: lib/action.php:485 +#: lib/action.php:486 msgid "Site notice" msgstr "Ð—Ð°ÑƒÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñайту" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "ОглÑд" -#: lib/action.php:617 +#: lib/action.php:618 msgid "Page notice" msgstr "Ð—Ð°ÑƒÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñторінки" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "ДругорÑдна Ð½Ð°Ð²Ñ–Ð³Ð°Ñ†Ñ–Ñ Ð¿Ð¾ Ñайту" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Про" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "ЧаПи" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "Умови" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "КонфіденційніÑÑ‚ÑŒ" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Джерело" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Контакт" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "Бедж" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "Ð›Ñ–Ñ†ÐµÐ½Ð·Ñ–Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð½Ð¾Ð³Ð¾ Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ StatusNet" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4272,12 +4281,12 @@ msgstr "" "**%%site.name%%** — це ÑÐµÑ€Ð²Ñ–Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð±Ð»Ð¾Ò‘Ñ–Ð² наданий вам [%%site.broughtby%%](%%" "site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** — це ÑÐµÑ€Ð²Ñ–Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð±Ð»Ð¾Ò‘Ñ–Ð². " -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4288,31 +4297,31 @@ msgstr "" "Ð´Ð»Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð±Ð»Ð¾Ò‘Ñ–Ð², верÑÑ–Ñ %s, доÑтупному під [GNU Affero General Public " "License](http://www.fsf.org/licensing/licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 msgid "Site content license" msgstr "Ð›Ñ–Ñ†ÐµÐ½Ð·Ñ–Ñ Ð·Ð¼Ñ–Ñту Ñайту" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "Ð’ÑÑ– " -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "ліцензіÑ." -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "ÐÑƒÐ¼ÐµÑ€Ð°Ñ†Ñ–Ñ Ñторінок" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "Вперед" -#: lib/action.php:1115 +#: lib/action.php:1116 msgid "Before" msgstr "Ðазад" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "Виникли певні проблеми з токеном поточної ÑеÑÑ–Ñ—." @@ -4364,6 +4373,16 @@ msgstr "ДопиÑи, до Ñких прикріплено це вкладенн msgid "Tags for this attachment" msgstr "Теґи Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ вкладеннÑ" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Пароль замінено" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Пароль замінено" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "Результати команди" @@ -5157,7 +5176,7 @@ msgstr "" "Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð°Ð±Ð¸ долучити кориÑтувачів до розмови. Такі Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð±Ð°Ñ‡Ð¸Ñ‚Ðµ " "лише Ви." -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "від" @@ -5223,69 +5242,73 @@ msgstr "ÐадіÑлати прÑмий допиÑ" msgid "To" msgstr "До" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 msgid "Available characters" msgstr "ЛишилоÑÑŒ знаків" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 msgid "Send a notice" msgstr "ÐадіÑлати допиÑ" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Що нового, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "ВклаÑти" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "ВклаÑти файл" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "Показувати міÑцезнаходженнÑ" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "Півн." -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "Півд." -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "Сх." -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "Зах." -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "в" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 msgid "in context" msgstr "в контекÑÑ‚Ñ–" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 msgid "Repeated by" msgstr "Вторуванні" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "ВідповіÑти на цей допиÑ" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "ВідповіÑти" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 msgid "Notice repeated" msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð²Ñ‚Ð¾Ñ€ÑƒÐ²Ð°Ð»Ð¸" @@ -5415,9 +5438,8 @@ msgid "Popular" msgstr "ПопулÑрне" #: lib/repeatform.php:107 -#, fuzzy msgid "Repeat this notice?" -msgstr "Вторувати цьому допиÑу" +msgstr "Повторити цей допиÑ?" #: lib/repeatform.php:132 msgid "Repeat this notice" diff --git a/locale/vi/LC_MESSAGES/statusnet.po b/locale/vi/LC_MESSAGES/statusnet.po index 0cae40567..029f4c86f 100644 --- a/locale/vi/LC_MESSAGES/statusnet.po +++ b/locale/vi/LC_MESSAGES/statusnet.po @@ -7,12 +7,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:43:59+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:52+0000\n" "Language-Team: Vietnamese\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: vi\n" "X-Message-Group: out-statusnet\n" @@ -193,11 +193,11 @@ msgstr "Không thể cáºp nháºt thà nh viên." msgid "You cannot block yourself!" msgstr "Không thể cáºp nháºt thà nh viên." -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -318,31 +318,31 @@ msgid "Could not find target user." msgstr "Không tìm thấy bất kỳ trạng thái nà o." #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "Biệt hiệu phải là chữ viết thÆ°á»ng hoặc số và không có khoảng trắng." #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "Biệt hiệu nà y đã dùng rồi. Hãy nháºp biệt hiệu khác." #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "Biệt hiệu không hợp lệ." #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "Trang chủ không phải là URL" #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "Tên đầy đủ quá dà i (tối Ä‘a là 255 ký tá»±)." @@ -353,7 +353,7 @@ msgid "Description is too long (max %d chars)." msgstr "Lý lịch quá dà i (không quá 140 ký tá»±)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "Tên khu vá»±c quá dà i (không quá 255 ký tá»±)." @@ -474,7 +474,7 @@ msgstr "Quá dà i. Tối Ä‘a là 140 ký tá»±." msgid "Not found" msgstr "Không tìm thấy" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -609,7 +609,7 @@ msgid "Preview" msgstr "Xem trÆ°á»›c" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 #, fuzzy msgid "Delete" msgstr "Xóa tin nhắn" @@ -624,13 +624,13 @@ msgid "Crop" msgstr "Nhóm" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -705,7 +705,7 @@ msgstr "Có" msgid "Block this user" msgstr "Ban user" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -780,7 +780,7 @@ msgstr "Äịa chỉ đó đã được xác nháºn rồi." #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "Không thể cáºp nháºt thà nh viên." @@ -843,7 +843,7 @@ msgstr "Bạn có chắc chắn là muốn xóa tin nhắn nà y không?" msgid "Do not delete this notice" msgstr "Không thể xóa tin nhắn nà y." -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 #, fuzzy msgid "Delete this notice" msgstr "Xóa tin nhắn" @@ -997,7 +997,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1533,7 +1533,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1629,7 +1629,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "NgÆ°á»i dùng không có thông tin." -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "Lá»—i xảy ra khi lÆ°u thà nh viên." @@ -1817,7 +1817,7 @@ msgstr "Tin nhắn cá nhân" msgid "Optionally add a personal message to the invitation." msgstr "Không bắt buá»™c phải thêm thông Ä‘iệp và o thÆ° má»i." -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "Gá»i" @@ -1946,7 +1946,7 @@ msgstr "Sai tên đăng nháºp hoặc máºt khẩu." msgid "Error setting user. You are probably not authorized." msgstr "ChÆ°a được phép." -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "Äăng nháºp" @@ -2062,7 +2062,7 @@ msgstr "Tin má»›i nhất" msgid "Direct message to %s sent" msgstr "Tin nhắn riêng" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 #, fuzzy msgid "Ajax Error" msgstr "Lá»—i" @@ -2071,7 +2071,7 @@ msgstr "Lá»—i" msgid "New notice" msgstr "Thông báo má»›i" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 #, fuzzy msgid "Notice posted" msgstr "Tin đã gá»i" @@ -2523,72 +2523,81 @@ msgstr "Thà nh phố" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "Bạn ở đâu, \"Thà nh phố, Tỉnh thà nh, Quốc gia\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "Từ khóa" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "Ngôn ngữ" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "Ngôn ngữ bạn thÃch" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "Khu vá»±c" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "Khu vá»±c nà o bạn thÆ°á»ng ở?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "Tá»± Ä‘á»™ng theo những ngÆ°á»i nà o đăng ký theo tôi" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "Lý lịch quá dà i (không quá 140 ký tá»±)" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 #, fuzzy msgid "Language is too long (max 50 chars)." msgstr "Ngôn ngữ quaÌ daÌ€i (tối Ä‘a là 50 ký tá»±)." -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "Trang chủ '%s' không hợp lệ" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 #, fuzzy msgid "Couldn't update user for autosubscribe." msgstr "Không thể cáºp nháºt thà nh viên." -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "Không thể lÆ°u hồ sÆ¡ cá nhân." + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "Không thể lÆ°u hồ sÆ¡ cá nhân." -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "Không thể lÆ°u hồ sÆ¡ cá nhân." -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "Äã lÆ°u các Ä‘iá»u chỉnh." @@ -2686,7 +2695,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2826,7 +2835,7 @@ msgstr "Lá»—i xảy ra vá»›i mã xác nháºn." msgid "Registration successful" msgstr "Äăng ký thà nh công" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "Äăng ký" @@ -3018,7 +3027,7 @@ msgstr "Bạn không thể đăng ký nếu không đồng ý các Ä‘iá»u khoẠmsgid "You already repeated that notice." msgstr "Bạn đã theo những ngÆ°á»i nà y:" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "Tạo" @@ -4169,16 +4178,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "Có lá»—i xảy ra khi lÆ°u tin nhắn." -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "Lá»—i cÆ¡ sở dữ liệu khi chèn trả lá»i: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%s (%s)" @@ -4238,140 +4247,140 @@ msgstr "%s (%s)" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "Trang chủ" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "Giá»›i thiệu" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Change your email, avatar, password, profile" msgstr "Thay đổi máºt khẩu của bạn" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "Kết nối" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "Không thể chuyển đến máy chủ: %s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "Tôi theo" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "ThÆ° má»i" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, fuzzy, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" "Äiá»n địa chỉ email và ná»™i dung tin nhắn để gá»i thÆ° má»i bạn bè và đồng nghiệp " "của bạn tham gia và o dịch vụ nà y." -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "Thoát" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "Tạo tà i khoản má»›i" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "HÆ°á»›ng dẫn" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "HÆ°á»›ng dẫn" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "Tìm kiếm" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "Thông báo má»›i" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "Thông báo má»›i" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "Tôi theo" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "Giá»›i thiệu" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "Riêng tÆ°" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "Nguồn" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "Liên hệ" -#: lib/action.php:741 +#: lib/action.php:742 #, fuzzy msgid "Badge" msgstr "Tin đã gá»i" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4380,12 +4389,12 @@ msgstr "" "**%%site.name%%** là dịch vụ gá»i tin nhắn được cung cấp từ [%%site.broughtby%" "%](%%site.broughtbyurl%%). " -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** là dịch vụ gá»i tin nhắn. " -#: lib/action.php:776 +#: lib/action.php:777 #, fuzzy, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4396,34 +4405,34 @@ msgstr "" "quyá»n [GNU Affero General Public License](http://www.fsf.org/licensing/" "licenses/agpl-3.0.html)." -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "Tìm theo ná»™i dung của tin nhắn" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 #, fuzzy msgid "After" msgstr "Sau" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "TrÆ°á»›c" -#: lib/action.php:1163 +#: lib/action.php:1164 #, fuzzy msgid "There was a problem with your session token." msgstr "Có lá»—i xảy ra khi thao tác. Hãy thá» lại lần nữa." @@ -4482,6 +4491,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "Äã lÆ°u máºt khẩu." + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "Äã lÆ°u máºt khẩu." + #: lib/channel.php:138 lib/channel.php:158 #, fuzzy msgid "Command results" @@ -5232,7 +5251,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr " từ " @@ -5298,75 +5317,79 @@ msgstr "Xóa tin nhắn" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "Nhiá»u hÆ¡n 6 ký tá»±" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "Thông báo má»›i" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "Bạn Ä‘ang là m gì thế, %s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "Không" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "Không có ná»™i dung!" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "Tạo" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 #, fuzzy msgid "Reply to this notice" msgstr "Trả lá»i tin nhắn nà y" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "Trả lá»i" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "Tin đã gá»i" diff --git a/locale/zh_CN/LC_MESSAGES/statusnet.po b/locale/zh_CN/LC_MESSAGES/statusnet.po index fb77fe462..576797ad3 100644 --- a/locale/zh_CN/LC_MESSAGES/statusnet.po +++ b/locale/zh_CN/LC_MESSAGES/statusnet.po @@ -10,12 +10,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:44:02+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:12:55+0000\n" "Language-Team: Simplified Chinese\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: zh-hans\n" "X-Message-Group: out-statusnet\n" @@ -195,11 +195,11 @@ msgstr "æ— æ³•æ›´æ–°ç”¨æˆ·ã€‚" msgid "You cannot block yourself!" msgstr "æ— æ³•æ›´æ–°ç”¨æˆ·ã€‚" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "阻æ¢ç”¨æˆ·å¤±è´¥ã€‚" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "å–消阻æ¢ç”¨æˆ·å¤±è´¥ã€‚" @@ -316,31 +316,31 @@ msgid "Could not find target user." msgstr "找ä¸åˆ°ä»»ä½•ä¿¡æ¯ã€‚" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "昵称åªèƒ½ä½¿ç”¨å°å†™å—æ¯å’Œæ•°å—,ä¸åŒ…å«ç©ºæ ¼ã€‚" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "昵称已被使用,æ¢ä¸€ä¸ªå§ã€‚" #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "ä¸æ˜¯æœ‰æ•ˆçš„昵称。" #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "主页的URLä¸æ£ç¡®ã€‚" #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "å…¨å过长(ä¸èƒ½è¶…过 255 个å—符)。" @@ -351,7 +351,7 @@ msgid "Description is too long (max %d chars)." msgstr "æ述过长(ä¸èƒ½è¶…过140å—符)。" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "ä½ç½®è¿‡é•¿(ä¸èƒ½è¶…过255个å—符)。" @@ -472,7 +472,7 @@ msgstr "超出长度é™åˆ¶ã€‚ä¸èƒ½è¶…过 140 个å—符。" msgid "Not found" msgstr "未找到" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -604,7 +604,7 @@ msgid "Preview" msgstr "预览" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 #, fuzzy msgid "Delete" msgstr "åˆ é™¤" @@ -618,13 +618,13 @@ msgid "Crop" msgstr "剪è£" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -699,7 +699,7 @@ msgstr "是" msgid "Block this user" msgstr "阻æ¢è¯¥ç”¨æˆ·" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "ä¿å˜é˜»æ¢ä¿¡æ¯å¤±è´¥ã€‚" @@ -776,7 +776,7 @@ msgstr "æ¤åœ°å€å·²è¢«ç¡®è®¤ã€‚" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "æ— æ³•æ›´æ–°ç”¨æˆ·ã€‚" @@ -839,7 +839,7 @@ msgstr "确定è¦åˆ 除这æ¡æ¶ˆæ¯å—?" msgid "Do not delete this notice" msgstr "æ— æ³•åˆ é™¤é€šå‘Šã€‚" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 #, fuzzy msgid "Delete this notice" msgstr "åˆ é™¤é€šå‘Š" @@ -989,7 +989,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1505,7 +1505,7 @@ msgstr "%s 组æˆå‘˜, 第 %d 页" msgid "A list of the users in this group." msgstr "该组æˆå‘˜åˆ—表。" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "admin管ç†å‘˜" @@ -1599,7 +1599,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "用户没有个人信æ¯ã€‚" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "ä¿å˜ç”¨æˆ·æ—¶å‡ºé”™ã€‚" @@ -1776,7 +1776,7 @@ msgstr "个人消æ¯" msgid "Optionally add a personal message to the invitation." msgstr "在邀请ä¸åŠ å‡ å¥è¯(å¯é€‰)。" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "å‘é€" @@ -1898,7 +1898,7 @@ msgstr "用户å或密ç ä¸æ£ç¡®ã€‚" msgid "Error setting user. You are probably not authorized." msgstr "未认è¯ã€‚" -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "登录" @@ -2008,7 +2008,7 @@ msgstr "新消æ¯" msgid "Direct message to %s sent" msgstr "å·²å‘ %s å‘é€æ¶ˆæ¯" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "Ajax错误" @@ -2016,7 +2016,7 @@ msgstr "Ajax错误" msgid "New notice" msgstr "新通告" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "消æ¯å·²å‘布。" @@ -2455,70 +2455,79 @@ msgstr "ä½ç½®" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "ä½ çš„ä½ç½®ï¼Œæ ¼å¼ç±»ä¼¼\"城市,çœä»½ï¼Œå›½å®¶\"" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "æ ‡ç¾" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "ä½ çš„æ ‡ç¾ (å—æ¯letters, æ•°å—numbers, -, ., å’Œ _), 以逗å·æˆ–ç©ºæ ¼åˆ†éš”" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "è¯è¨€" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "首选è¯è¨€" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "时区" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "您一般处于哪个时区?" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "自动订阅任何订阅我的更新的人(这个选项最适åˆæœºå™¨äºº)" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "自述过长(ä¸èƒ½è¶…过140å—符)。" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "未选择时区。" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "è¯è¨€è¿‡é•¿(ä¸èƒ½è¶…过50个å—符)。" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "主页'%s'ä¸æ£ç¡®" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "æ— æ³•æ›´æ–°ç”¨æˆ·çš„è‡ªåŠ¨è®¢é˜…é€‰é¡¹ã€‚" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "æ— æ³•ä¿å˜ä¸ªäººä¿¡æ¯ã€‚" + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "æ— æ³•ä¿å˜ä¸ªäººä¿¡æ¯ã€‚" -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "æ— æ³•ä¿å˜ä¸ªäººä¿¡æ¯ã€‚" -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "设置已ä¿å˜ã€‚" @@ -2618,7 +2627,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "æ ‡ç¾äº‘èšé›†" @@ -2755,7 +2764,7 @@ msgstr "验è¯ç 出错。" msgid "Registration successful" msgstr "注册æˆåŠŸã€‚" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "注册" @@ -2943,7 +2952,7 @@ msgstr "您必须åŒæ„æ¤æŽˆæƒæ–¹å¯æ³¨å†Œã€‚" msgid "You already repeated that notice." msgstr "您已æˆåŠŸé˜»æ¢è¯¥ç”¨æˆ·ï¼š" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "创建" @@ -4086,16 +4095,16 @@ msgstr "ä½ åœ¨çŸæ—¶é—´é‡Œå‘布了过多的消æ¯ï¼Œè¯·æ·±å‘¼å¸ï¼Œè¿‡å‡ 分钟 msgid "You are banned from posting notices on this site." msgstr "åœ¨è¿™ä¸ªç½‘ç«™ä½ è¢«ç¦æ¢å‘布消æ¯ã€‚" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "ä¿å˜é€šå‘Šæ—¶å‡ºé”™ã€‚" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "æ·»åŠ å›žå¤æ—¶æ•°æ®åº“出错:%s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, fuzzy, php-format msgid "RT @%1$s %2$s" msgstr "%1$s (%2$s)" @@ -4152,137 +4161,137 @@ msgstr "%s (%s)" msgid "Untitled page" msgstr "æ— æ ‡é¢˜é¡µ" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "主站导航" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "主页" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "个人资料åŠæœ‹å‹å¹´è¡¨" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Account" msgstr "å¸å·" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Change your email, avatar, password, profile" msgstr "修改资料" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "连接" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "æ— æ³•é‡å®šå‘到æœåŠ¡å™¨ï¼š%s" -#: lib/action.php:440 +#: lib/action.php:441 #, fuzzy msgid "Change site configuration" msgstr "主站导航" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "邀请" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, fuzzy, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "使用这个表å•æ¥é‚€è¯·å¥½å‹å’ŒåŒäº‹åŠ 入。" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "登出" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "登出本站" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "创建新å¸å·" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "登入本站" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "帮助" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "帮助" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "æœç´¢" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "检索人或文å—" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "新通告" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "本地显示" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "新通告" -#: lib/action.php:719 +#: lib/action.php:720 #, fuzzy msgid "Secondary site navigation" msgstr "次项站导航" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "关于" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "常è§é—®é¢˜FAQ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "éšç§" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "æ¥æº" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "è”系人" -#: lib/action.php:741 +#: lib/action.php:742 #, fuzzy msgid "Badge" msgstr "呼å«" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "StatusNet软件注册è¯" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4291,12 +4300,12 @@ msgstr "" "**%%site.name%%** 是一个微åšå®¢æœåŠ¡ï¼Œæ供者为 [%%site.broughtby%%](%%site." "broughtbyurl%%)。" -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%** 是一个微åšå®¢æœåŠ¡ã€‚" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4307,34 +4316,34 @@ msgstr "" "General Public License](http://www.fsf.org/licensing/licenses/agpl-3.0.html)" "授æƒã€‚" -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "StatusNet软件注册è¯" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "全部" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "注册è¯" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "分页" -#: lib/action.php:1107 +#: lib/action.php:1108 #, fuzzy msgid "After" msgstr "« 之åŽ" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "ä¹‹å‰ Â»" -#: lib/action.php:1163 +#: lib/action.php:1164 #, fuzzy msgid "There was a problem with your session token." msgstr "会è¯æ ‡è¯†æœ‰é—®é¢˜ï¼Œè¯·é‡è¯•ã€‚" @@ -4395,6 +4404,16 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +#, fuzzy +msgid "Password changing failed" +msgstr "密ç å·²ä¿å˜ã€‚" + +#: lib/authenticationplugin.php:197 +#, fuzzy +msgid "Password changing is not allowed" +msgstr "密ç å·²ä¿å˜ã€‚" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "执行结果" @@ -5093,7 +5112,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 #, fuzzy msgid "from" msgstr " 从 " @@ -5159,76 +5178,80 @@ msgstr "åˆ é™¤é€šå‘Š" msgid "To" msgstr "到" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "6 个或更多å—符" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "å‘é€æ¶ˆæ¯" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "æ€Žä¹ˆæ ·ï¼Œ%s?" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 #, fuzzy msgid "N" msgstr "å¦" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "没有内容ï¼" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "创建" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 #, fuzzy msgid "Reply to this notice" msgstr "æ— æ³•åˆ é™¤é€šå‘Šã€‚" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 #, fuzzy msgid "Reply" msgstr "回å¤" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "消æ¯å·²å‘布。" diff --git a/locale/zh_TW/LC_MESSAGES/statusnet.po b/locale/zh_TW/LC_MESSAGES/statusnet.po index fc8949a5c..906f8fab1 100644 --- a/locale/zh_TW/LC_MESSAGES/statusnet.po +++ b/locale/zh_TW/LC_MESSAGES/statusnet.po @@ -7,12 +7,12 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-12-25 09:42+0000\n" -"PO-Revision-Date: 2009-12-25 09:44:05+0000\n" +"POT-Creation-Date: 2010-01-05 22:10+0000\n" +"PO-Revision-Date: 2010-01-05 22:13:02+0000\n" "Language-Team: Traditional Chinese\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.16alpha (r60380); Translate extension (2009-12-06)\n" +"X-Generator: MediaWiki 1.16alpha (r60693); Translate extension (2010-01-04)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: zh-hant\n" "X-Message-Group: out-statusnet\n" @@ -192,11 +192,11 @@ msgstr "無法更新使用者" msgid "You cannot block yourself!" msgstr "無法更新使用者" -#: actions/apiblockcreate.php:119 +#: actions/apiblockcreate.php:126 msgid "Block user failed." msgstr "" -#: actions/apiblockdestroy.php:107 +#: actions/apiblockdestroy.php:114 msgid "Unblock user failed." msgstr "" @@ -311,31 +311,31 @@ msgid "Could not find target user." msgstr "無法更新使用者" #: actions/apigroupcreate.php:164 actions/editgroup.php:182 -#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/newgroup.php:126 actions/profilesettings.php:215 #: actions/register.php:205 msgid "Nickname must have only lowercase letters and numbers and no spaces." msgstr "暱稱請用å°å¯«å—æ¯æˆ–數å—ï¼Œå‹¿åŠ ç©ºæ ¼ã€‚" #: actions/apigroupcreate.php:173 actions/editgroup.php:186 -#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/register.php:208 msgid "Nickname already in use. Try another one." msgstr "æ¤æš±ç¨±å·²æœ‰äººä½¿ç”¨ã€‚å†è©¦è©¦çœ‹åˆ¥çš„å§ã€‚" #: actions/apigroupcreate.php:180 actions/editgroup.php:189 -#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/register.php:210 msgid "Not a valid nickname." msgstr "" #: actions/apigroupcreate.php:196 actions/editgroup.php:195 -#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/newgroup.php:139 actions/profilesettings.php:222 #: actions/register.php:217 msgid "Homepage is not a valid URL." msgstr "個人首é ä½å€éŒ¯èª¤" #: actions/apigroupcreate.php:205 actions/editgroup.php:198 -#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/newgroup.php:142 actions/profilesettings.php:225 #: actions/register.php:220 msgid "Full name is too long (max 255 chars)." msgstr "å…¨åéŽé•·ï¼ˆæœ€å¤š255å—元)" @@ -346,7 +346,7 @@ msgid "Description is too long (max %d chars)." msgstr "自我介紹éŽé•·(å…±140個å—å…ƒ)" #: actions/apigroupcreate.php:224 actions/editgroup.php:204 -#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/newgroup.php:148 actions/profilesettings.php:232 #: actions/register.php:227 msgid "Location is too long (max 255 chars)." msgstr "地點éŽé•·ï¼ˆå…±255個å—)" @@ -466,7 +466,7 @@ msgstr "" msgid "Not found" msgstr "" -#: actions/apistatusesupdate.php:227 actions/newnotice.php:191 +#: actions/apistatusesupdate.php:221 actions/newnotice.php:178 #, php-format msgid "Max notice size is %d chars, including attachment URL." msgstr "" @@ -598,7 +598,7 @@ msgid "Preview" msgstr "" #: actions/avatarsettings.php:149 lib/deleteuserform.php:66 -#: lib/noticelist.php:603 +#: lib/noticelist.php:611 msgid "Delete" msgstr "" @@ -611,13 +611,13 @@ msgid "Crop" msgstr "" #: actions/avatarsettings.php:268 actions/disfavor.php:74 -#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:50 #: actions/groupblock.php:66 actions/grouplogo.php:309 #: actions/groupunblock.php:66 actions/imsettings.php:206 #: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 #: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 #: actions/othersettings.php:145 actions/passwordsettings.php:138 -#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/profilesettings.php:194 actions/recoverpassword.php:337 #: actions/register.php:165 actions/remotesubscribe.php:77 #: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 #: actions/subscribe.php:46 actions/tagother.php:166 @@ -692,7 +692,7 @@ msgstr "" msgid "Block this user" msgstr "ç„¡æ¤ä½¿ç”¨è€…" -#: actions/block.php:162 +#: actions/block.php:167 msgid "Failed to save block information." msgstr "" @@ -768,7 +768,7 @@ msgstr "" #: actions/confirmaddress.php:114 actions/emailsettings.php:296 #: actions/emailsettings.php:427 actions/imsettings.php:258 #: actions/imsettings.php:401 actions/othersettings.php:174 -#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/profilesettings.php:283 actions/smssettings.php:278 #: actions/smssettings.php:420 msgid "Couldn't update user." msgstr "無法更新使用者" @@ -830,7 +830,7 @@ msgstr "" msgid "Do not delete this notice" msgstr "ç„¡æ¤é€šçŸ¥" -#: actions/deletenotice.php:146 lib/noticelist.php:603 +#: actions/deletenotice.php:146 lib/noticelist.php:611 msgid "Delete this notice" msgstr "" @@ -975,7 +975,7 @@ msgstr "" #: actions/designadminpanel.php:586 actions/emailsettings.php:195 #: actions/imsettings.php:163 actions/othersettings.php:126 -#: actions/pathsadminpanel.php:324 actions/profilesettings.php:167 +#: actions/pathsadminpanel.php:324 actions/profilesettings.php:174 #: actions/siteadminpanel.php:388 actions/smssettings.php:181 #: actions/subscriptions.php:203 actions/tagother.php:154 #: actions/useradminpanel.php:313 lib/designsettings.php:256 @@ -1474,7 +1474,7 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +#: actions/groupmembers.php:175 lib/action.php:441 lib/groupnav.php:107 msgid "Admin" msgstr "" @@ -1563,7 +1563,7 @@ msgstr "" msgid "User is not blocked from group." msgstr "" -#: actions/groupunblock.php:128 actions/unblock.php:77 +#: actions/groupunblock.php:128 actions/unblock.php:86 #, fuzzy msgid "Error removing the block." msgstr "儲å˜ä½¿ç”¨è€…發生錯誤" @@ -1736,7 +1736,7 @@ msgstr "" msgid "Optionally add a personal message to the invitation." msgstr "" -#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:232 msgid "Send" msgstr "" @@ -1832,7 +1832,7 @@ msgstr "使用者å稱或密碼錯誤" msgid "Error setting user. You are probably not authorized." msgstr "" -#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: actions/login.php:208 actions/login.php:261 lib/action.php:459 #: lib/logingroupnav.php:79 msgid "Login" msgstr "登入" @@ -1939,7 +1939,7 @@ msgstr "" msgid "Direct message to %s sent" msgstr "" -#: actions/newmessage.php:210 actions/newnotice.php:250 lib/channel.php:170 +#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 msgid "Ajax Error" msgstr "" @@ -1947,7 +1947,7 @@ msgstr "" msgid "New notice" msgstr "新訊æ¯" -#: actions/newnotice.php:216 +#: actions/newnotice.php:211 msgid "Notice posted" msgstr "" @@ -2375,70 +2375,79 @@ msgstr "地點" msgid "Where you are, like \"City, State (or Region), Country\"" msgstr "" -#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/profilesettings.php:138 +msgid "Share my current location when posting notices" +msgstr "" + +#: actions/profilesettings.php:145 actions/tagother.php:149 #: actions/tagother.php:209 lib/subscriptionlist.php:106 #: lib/subscriptionlist.php:108 lib/userprofile.php:209 msgid "Tags" msgstr "" -#: actions/profilesettings.php:140 +#: actions/profilesettings.php:147 msgid "" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" msgstr "" -#: actions/profilesettings.php:144 actions/siteadminpanel.php:294 +#: actions/profilesettings.php:151 actions/siteadminpanel.php:294 msgid "Language" msgstr "" -#: actions/profilesettings.php:145 +#: actions/profilesettings.php:152 msgid "Preferred language" msgstr "" -#: actions/profilesettings.php:154 +#: actions/profilesettings.php:161 msgid "Timezone" msgstr "" -#: actions/profilesettings.php:155 +#: actions/profilesettings.php:162 msgid "What timezone are you normally in?" msgstr "" -#: actions/profilesettings.php:160 +#: actions/profilesettings.php:167 msgid "" "Automatically subscribe to whoever subscribes to me (best for non-humans)" msgstr "" -#: actions/profilesettings.php:221 actions/register.php:223 +#: actions/profilesettings.php:228 actions/register.php:223 #, fuzzy, php-format msgid "Bio is too long (max %d chars)." msgstr "自我介紹éŽé•·(å…±140個å—å…ƒ)" -#: actions/profilesettings.php:228 actions/siteadminpanel.php:164 +#: actions/profilesettings.php:235 actions/siteadminpanel.php:164 msgid "Timezone not selected." msgstr "" -#: actions/profilesettings.php:234 +#: actions/profilesettings.php:241 msgid "Language is too long (max 50 chars)." msgstr "" -#: actions/profilesettings.php:246 actions/tagother.php:178 +#: actions/profilesettings.php:253 actions/tagother.php:178 #, fuzzy, php-format msgid "Invalid tag: \"%s\"" msgstr "個人首é 連çµ%s無效" -#: actions/profilesettings.php:295 +#: actions/profilesettings.php:302 msgid "Couldn't update user for autosubscribe." msgstr "" -#: actions/profilesettings.php:328 +#: actions/profilesettings.php:354 +#, fuzzy +msgid "Couldn't save location prefs." +msgstr "無法儲å˜å€‹äººè³‡æ–™" + +#: actions/profilesettings.php:366 msgid "Couldn't save profile." msgstr "無法儲å˜å€‹äººè³‡æ–™" -#: actions/profilesettings.php:336 +#: actions/profilesettings.php:374 #, fuzzy msgid "Couldn't save tags." msgstr "無法儲å˜å€‹äººè³‡æ–™" -#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +#: actions/profilesettings.php:382 lib/adminpanelaction.php:126 msgid "Settings saved." msgstr "" @@ -2532,7 +2541,7 @@ msgid "" "one!" msgstr "" -#: actions/publictagcloud.php:135 +#: actions/publictagcloud.php:131 msgid "Tag cloud" msgstr "" @@ -2669,7 +2678,7 @@ msgstr "確èªç¢¼ç™¼ç”ŸéŒ¯èª¤" msgid "Registration successful" msgstr "" -#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: actions/register.php:114 actions/register.php:502 lib/action.php:456 #: lib/logingroupnav.php:85 msgid "Register" msgstr "" @@ -2837,7 +2846,7 @@ msgstr "" msgid "You already repeated that notice." msgstr "ç„¡æ¤ä½¿ç”¨è€…" -#: actions/repeat.php:114 lib/noticelist.php:621 +#: actions/repeat.php:114 lib/noticelist.php:629 #, fuzzy msgid "Repeated" msgstr "新增" @@ -3940,16 +3949,16 @@ msgstr "" msgid "You are banned from posting notices on this site." msgstr "" -#: classes/Notice.php:319 classes/Notice.php:344 +#: classes/Notice.php:309 classes/Notice.php:334 msgid "Problem saving notice." msgstr "" -#: classes/Notice.php:1044 +#: classes/Notice.php:1034 #, php-format msgid "DB error inserting reply: %s" msgstr "å¢žåŠ å›žè¦†æ™‚,資料庫發生錯誤: %s" -#: classes/Notice.php:1371 +#: classes/Notice.php:1361 #, php-format msgid "RT @%1$s %2$s" msgstr "" @@ -4008,134 +4017,134 @@ msgstr "" msgid "Untitled page" msgstr "" -#: lib/action.php:425 +#: lib/action.php:426 msgid "Primary site navigation" msgstr "" -#: lib/action.php:431 +#: lib/action.php:432 msgid "Home" msgstr "主é " -#: lib/action.php:431 +#: lib/action.php:432 msgid "Personal profile and friends timeline" msgstr "" -#: lib/action.php:433 +#: lib/action.php:434 #, fuzzy msgid "Account" msgstr "關於" -#: lib/action.php:433 +#: lib/action.php:434 msgid "Change your email, avatar, password, profile" msgstr "" -#: lib/action.php:436 +#: lib/action.php:437 msgid "Connect" msgstr "連çµ" -#: lib/action.php:436 +#: lib/action.php:437 #, fuzzy msgid "Connect to services" msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s" -#: lib/action.php:440 +#: lib/action.php:441 msgid "Change site configuration" msgstr "" -#: lib/action.php:444 lib/subgroupnav.php:105 +#: lib/action.php:445 lib/subgroupnav.php:105 msgid "Invite" msgstr "" -#: lib/action.php:445 lib/subgroupnav.php:106 +#: lib/action.php:446 lib/subgroupnav.php:106 #, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout" msgstr "登出" -#: lib/action.php:450 +#: lib/action.php:451 msgid "Logout from the site" msgstr "" -#: lib/action.php:455 +#: lib/action.php:456 #, fuzzy msgid "Create an account" msgstr "新增帳號" -#: lib/action.php:458 +#: lib/action.php:459 msgid "Login to the site" msgstr "" -#: lib/action.php:461 lib/action.php:724 +#: lib/action.php:462 lib/action.php:725 msgid "Help" msgstr "求救" -#: lib/action.php:461 +#: lib/action.php:462 #, fuzzy msgid "Help me!" msgstr "求救" -#: lib/action.php:464 lib/searchaction.php:127 +#: lib/action.php:465 lib/searchaction.php:127 msgid "Search" msgstr "" -#: lib/action.php:464 +#: lib/action.php:465 msgid "Search for people or text" msgstr "" -#: lib/action.php:485 +#: lib/action.php:486 #, fuzzy msgid "Site notice" msgstr "新訊æ¯" -#: lib/action.php:551 +#: lib/action.php:552 msgid "Local views" msgstr "" -#: lib/action.php:617 +#: lib/action.php:618 #, fuzzy msgid "Page notice" msgstr "新訊æ¯" -#: lib/action.php:719 +#: lib/action.php:720 msgid "Secondary site navigation" msgstr "" -#: lib/action.php:726 +#: lib/action.php:727 msgid "About" msgstr "關於" -#: lib/action.php:728 +#: lib/action.php:729 msgid "FAQ" msgstr "常見å•é¡Œ" -#: lib/action.php:732 +#: lib/action.php:733 msgid "TOS" msgstr "" -#: lib/action.php:735 +#: lib/action.php:736 msgid "Privacy" msgstr "" -#: lib/action.php:737 +#: lib/action.php:738 msgid "Source" msgstr "" -#: lib/action.php:739 +#: lib/action.php:740 msgid "Contact" msgstr "好å‹åå–®" -#: lib/action.php:741 +#: lib/action.php:742 msgid "Badge" msgstr "" -#: lib/action.php:769 +#: lib/action.php:770 msgid "StatusNet software license" msgstr "" -#: lib/action.php:772 +#: lib/action.php:773 #, php-format msgid "" "**%%site.name%%** is a microblogging service brought to you by [%%site." @@ -4144,12 +4153,12 @@ msgstr "" "**%%site.name%%**是由[%%site.broughtby%%](%%site.broughtbyurl%%)所æ供的微型" "部è½æ ¼æœå‹™" -#: lib/action.php:774 +#: lib/action.php:775 #, php-format msgid "**%%site.name%%** is a microblogging service. " msgstr "**%%site.name%%**是個微型部è½æ ¼" -#: lib/action.php:776 +#: lib/action.php:777 #, php-format msgid "" "It runs the [StatusNet](http://status.net/) microblogging software, version %" @@ -4157,33 +4166,33 @@ msgid "" "org/licensing/licenses/agpl-3.0.html)." msgstr "" -#: lib/action.php:790 +#: lib/action.php:791 #, fuzzy msgid "Site content license" msgstr "新訊æ¯" -#: lib/action.php:799 +#: lib/action.php:800 msgid "All " msgstr "" -#: lib/action.php:804 +#: lib/action.php:805 msgid "license." msgstr "" -#: lib/action.php:1098 +#: lib/action.php:1099 msgid "Pagination" msgstr "" -#: lib/action.php:1107 +#: lib/action.php:1108 msgid "After" msgstr "" -#: lib/action.php:1115 +#: lib/action.php:1116 #, fuzzy msgid "Before" msgstr "之å‰çš„內容»" -#: lib/action.php:1163 +#: lib/action.php:1164 msgid "There was a problem with your session token." msgstr "" @@ -4238,6 +4247,14 @@ msgstr "" msgid "Tags for this attachment" msgstr "" +#: lib/authenticationplugin.php:182 lib/authenticationplugin.php:187 +msgid "Password changing failed" +msgstr "" + +#: lib/authenticationplugin.php:197 +msgid "Password changing is not allowed" +msgstr "" + #: lib/channel.php:138 lib/channel.php:158 msgid "Command results" msgstr "" @@ -4917,7 +4934,7 @@ msgid "" "users in conversation. People can send you messages for your eyes only." msgstr "" -#: lib/mailbox.php:227 lib/noticelist.php:469 +#: lib/mailbox.php:227 lib/noticelist.php:477 msgid "from" msgstr "" @@ -4982,73 +4999,77 @@ msgstr "" msgid "To" msgstr "" -#: lib/messageform.php:159 lib/noticeform.php:183 +#: lib/messageform.php:159 lib/noticeform.php:185 #, fuzzy msgid "Available characters" msgstr "6個以上å—å…ƒ" -#: lib/noticeform.php:158 +#: lib/noticeform.php:160 #, fuzzy msgid "Send a notice" msgstr "新訊æ¯" -#: lib/noticeform.php:171 +#: lib/noticeform.php:173 #, php-format msgid "What's up, %s?" msgstr "" -#: lib/noticeform.php:190 +#: lib/noticeform.php:192 msgid "Attach" msgstr "" -#: lib/noticeform.php:194 +#: lib/noticeform.php:196 msgid "Attach a file" msgstr "" -#: lib/noticelist.php:420 +#: lib/noticeform.php:212 +msgid "Share your location" +msgstr "" + +#: lib/noticelist.php:428 #, php-format msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "N" msgstr "" -#: lib/noticelist.php:421 +#: lib/noticelist.php:429 msgid "S" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "E" msgstr "" -#: lib/noticelist.php:422 +#: lib/noticelist.php:430 msgid "W" msgstr "" -#: lib/noticelist.php:428 +#: lib/noticelist.php:436 msgid "at" msgstr "" -#: lib/noticelist.php:523 +#: lib/noticelist.php:531 #, fuzzy msgid "in context" msgstr "無內容" -#: lib/noticelist.php:548 +#: lib/noticelist.php:556 #, fuzzy msgid "Repeated by" msgstr "新增" -#: lib/noticelist.php:577 +#: lib/noticelist.php:585 msgid "Reply to this notice" msgstr "" -#: lib/noticelist.php:578 +#: lib/noticelist.php:586 msgid "Reply" msgstr "" -#: lib/noticelist.php:620 +#: lib/noticelist.php:628 #, fuzzy msgid "Notice repeated" msgstr "更新個人圖åƒ" diff --git a/plugins/APCPlugin.php b/plugins/APCPlugin.php new file mode 100644 index 000000000..18409e29e --- /dev/null +++ b/plugins/APCPlugin.php @@ -0,0 +1,108 @@ +<?php +/** + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * Plugin to implement cache interface for APC variable cache + * + * PHP version 5 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * A plugin to use APC's variable cache for the cache interface + * + * New plugin interface lets us use alternative cache systems + * for caching. This one uses APC's variable cache. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class APCPlugin extends Plugin +{ + /** + * Get a value associated with a key + * + * The value should have been set previously. + * + * @param string &$key in; Lookup key + * @param mixed &$value out; value associated with key + * + * @return boolean hook success + */ + + function onStartCacheGet(&$key, &$value) + { + $value = apc_fetch($key); + Event::handle('EndCacheGet', array($key, &$value)); + return false; + } + + /** + * Associate a value with a key + * + * @param string &$key in; Key to use for lookups + * @param mixed &$value in; Value to associate + * @param integer &$flag in; Flag (passed through to Memcache) + * @param integer &$expiry in; Expiry (passed through to Memcache) + * @param boolean &$success out; Whether the set was successful + * + * @return boolean hook success + */ + + function onStartCacheSet(&$key, &$value, &$flag, &$expiry, &$success) + { + $success = apc_store($key, $value, ((is_null($expiry)) ? 0 : $expiry)); + + Event::handle('EndCacheSet', array($key, $value, $flag, + $expiry)); + return false; + } + + /** + * Delete a value associated with a key + * + * @param string &$key in; Key to lookup + * @param boolean &$success out; whether it worked + * + * @return boolean hook success + */ + + function onStartCacheDelete(&$key, &$success) + { + $success = apc_delete($key); + Event::handle('EndCacheDelete', array($key)); + return false; + } +} + diff --git a/plugins/BitlyUrl/BitlyUrlPlugin.php b/plugins/BitlyUrl/BitlyUrlPlugin.php index 65d0f70e6..f7f28b4d6 100644 --- a/plugins/BitlyUrl/BitlyUrlPlugin.php +++ b/plugins/BitlyUrl/BitlyUrlPlugin.php @@ -49,6 +49,18 @@ class BitlyUrlPlugin extends UrlShortenerPlugin if(!$response) return; return current(json_decode($response)->results)->hashUrl; } -} + function onPluginVersion(&$versions) + { + $versions[] = array('name' => sprintf('BitlyUrl (%s)', $this->shortenerName), + 'version' => STATUSNET_VERSION, + 'author' => 'Craig Andrews', + 'homepage' => 'http://status.net/wiki/Plugin:BitlyUrl', + 'rawdescription' => + sprintf(_m('Uses <a href="http://%1$s/">%1$s</a> URL-shortener service.'), + $this->shortenerName)); + + return true; + } +} diff --git a/plugins/Blacklist/BlacklistPlugin.php b/plugins/Blacklist/BlacklistPlugin.php new file mode 100644 index 000000000..84a2cb616 --- /dev/null +++ b/plugins/Blacklist/BlacklistPlugin.php @@ -0,0 +1,216 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Plugin to prevent use of nicknames or URLs on a blacklist + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Action + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Plugin to prevent use of nicknames or URLs on a blacklist + * + * @category Plugin + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class BlacklistPlugin extends Plugin +{ + const VERSION = STATUSNET_VERSION; + + public $nicknames = array(); + public $urls = array(); + + /** + * Hook registration to prevent blacklisted homepages or nicknames + * + * Throws an exception if there's a blacklisted homepage or nickname. + * + * @param Action $action Action being called (usually register) + * + * @return boolean hook value + */ + + function onStartRegistrationTry($action) + { + $homepage = strtolower($action->trimmed('homepage')); + + if (!empty($homepage)) { + if (!$this->_checkUrl($homepage)) { + $msg = sprintf(_m("You may not register with homepage '%s'"), + $homepage); + throw new ClientException($msg); + } + } + + $nickname = strtolower($action->trimmed('nickname')); + + if (!empty($nickname)) { + if (!$this->_checkNickname($nickname)) { + $msg = sprintf(_m("You may not register with nickname '%s'"), + $nickname); + throw new ClientException($msg); + } + } + + return true; + } + + /** + * Hook profile update to prevent blacklisted homepages or nicknames + * + * Throws an exception if there's a blacklisted homepage or nickname. + * + * @param Action $action Action being called (usually register) + * + * @return boolean hook value + */ + + function onStartProfileSaveForm($action) + { + $homepage = strtolower($action->trimmed('homepage')); + + if (!empty($homepage)) { + if (!$this->_checkUrl($homepage)) { + $msg = sprintf(_m("You may not use homepage '%s'"), + $homepage); + throw new ClientException($msg); + } + } + + $nickname = strtolower($action->trimmed('nickname')); + + if (!empty($nickname)) { + if (!$this->_checkNickname($nickname)) { + $msg = sprintf(_m("You may not use nickname '%s'"), + $nickname); + throw new ClientException($msg); + } + } + + return true; + } + + /** + * Hook notice save to prevent blacklisted urls + * + * Throws an exception if there's a blacklisted url in the content. + * + * @param Notice &$notice Notice being saved + * + * @return boolean hook value + */ + + function onStartNoticeSave(&$notice) + { + common_replace_urls_callback($notice->content, + array($this, 'checkNoticeUrl')); + return true; + } + + /** + * Helper callback for notice save + * + * Throws an exception if there's a blacklisted url in the content. + * + * @param string $url URL in the notice content + * + * @return boolean hook value + */ + + function checkNoticeUrl($url) + { + // It comes in special'd, so we unspecial it + // before comparing against patterns + + $url = htmlspecialchars_decode($url); + + if (!$this->_checkUrl($url)) { + $msg = sprintf(_m("You may not use url '%s' in notices"), + $url); + throw new ClientException($msg); + } + + return $url; + } + + /** + * Helper for checking URLs + * + * Checks an URL against our patterns for a match. + * + * @param string $url URL to check + * + * @return boolean true means it's OK, false means it's bad + */ + + private function _checkUrl($url) + { + foreach ($this->urls as $pattern) { + if (preg_match("/$pattern/", $url)) { + return false; + } + } + + return true; + } + + /** + * Helper for checking nicknames + * + * Checks a nickname against our patterns for a match. + * + * @param string $nickname nickname to check + * + * @return boolean true means it's OK, false means it's bad + */ + + private function _checkNickname($nickname) + { + foreach ($this->nicknames as $pattern) { + if (preg_match("/$pattern/", $nickname)) { + return false; + } + } + + return true; + } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Blacklist', + 'version' => self::VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:Blacklist', + 'description' => + _m('Keep a blacklist of forbidden nickname and URL patterns.')); + return true; + } +} diff --git a/plugins/CacheLogPlugin.php b/plugins/CacheLogPlugin.php new file mode 100644 index 000000000..4c47de80e --- /dev/null +++ b/plugins/CacheLogPlugin.php @@ -0,0 +1,121 @@ +<?php +/** + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * Logs cache access + * + * PHP version 5 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Log cache access + * + * Note that since most caching plugins return false for StartCache* + * methods, you should add this plugin before them, i.e. + * + * addPlugin('CacheLog'); + * addPlugin('XCache'); + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class CacheLogPlugin extends Plugin +{ + function onStartCacheGet(&$key, &$value) + { + $this->log(LOG_INFO, "Fetching key '$key'"); + return true; + } + + function onEndCacheGet($key, &$value) + { + if ($value === false) { + $this->log(LOG_INFO, "Cache MISS for key '$key'"); + } else { + $this->log(LOG_INFO, "Cache HIT for key '$key'"); + } + return true; + } + + function onStartCacheSet(&$key, &$value, &$flag, &$expiry, &$success) + { + if (empty($value)) { + if (is_array($value)) { + $this->log(LOG_INFO, "Setting empty array for key '$key'"); + } else if (is_null($value)) { + $this->log(LOG_INFO, "Setting null value for key '$key'"); + } else if (is_string($value)) { + $this->log(LOG_INFO, "Setting empty string for key '$key'"); + } else if (is_integer($value)) { + $this->log(LOG_INFO, "Setting integer 0 for key '$key'"); + } else { + $this->log(LOG_INFO, "Setting empty value '$value' for key '$key'"); + } + } else { + $this->log(LOG_INFO, "Setting non-empty value for key '$key'"); + } + return true; + } + + function onEndCacheSet($key, $value, $flag, $expiry) + { + $this->log(LOG_INFO, "Done setting cache value for key '$key'"); + return true; + } + + function onStartCacheDelete(&$key, &$success) + { + $this->log(LOG_INFO, "Deleting cache value for key '$key'"); + return true; + } + + function onEndCacheDelete($key) + { + $this->log(LOG_INFO, "Done deleting cache value for key '$key'"); + return true; + } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'CacheLog', + 'version' => STATUSNET_VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:CacheLog', + 'description' => + _m('Log reads and writes to the cache')); + return true; + } +} + diff --git a/plugins/CasAuthentication/CasAuthenticationPlugin.php b/plugins/CasAuthentication/CasAuthenticationPlugin.php index 428aafb02..818a11f77 100644 --- a/plugins/CasAuthentication/CasAuthenticationPlugin.php +++ b/plugins/CasAuthentication/CasAuthenticationPlugin.php @@ -39,6 +39,7 @@ class CasAuthenticationPlugin extends AuthenticationPlugin public $server; public $port = 443; public $path = ''; + public $takeOverLogin = false; function checkPassword($username, $password) { @@ -56,8 +57,14 @@ class CasAuthenticationPlugin extends AuthenticationPlugin case 'CasloginAction': require_once(INSTALLDIR.'/plugins/CasAuthentication/' . strtolower(mb_substr($cls, 0, -6)) . '.php'); return false; - default: - return parent::onAutoload($cls); + } + } + + function onArgsInitialize(&$args) + { + if($this->takeOverLogin && $args['action'] == 'login') + { + $args['action'] = 'caslogin'; } } diff --git a/plugins/CasAuthentication/README b/plugins/CasAuthentication/README index 2ee54dc05..c17a28e54 100644 --- a/plugins/CasAuthentication/README +++ b/plugins/CasAuthentication/README @@ -21,6 +21,9 @@ password_changeable*: must be set to false. This plugin does not support changin server*: CAS server to authentication against port (443): Port the CAS server listens on. Almost always 443 path (): Path on the server to CAS. Usually blank. +takeOverLogin (false): Take over the main login action. If takeOverLogin is + set, anytime the standard username/password login form would be shown, + a CAS login will be done instead. * required default values are in (parenthesis) @@ -33,6 +36,7 @@ addPlugin('casAuthentication', array( 'autoregistration'=>true, 'server'=>'sso-cas.univ-rennes1.fr', 'port'=>443, - 'path'=>'' + 'path'=>'', + 'takeOverLogin'=>true )); diff --git a/plugins/Facebook/FacebookPlugin.php b/plugins/Facebook/FacebookPlugin.php index 39b2ef287..de91bf24a 100644 --- a/plugins/Facebook/FacebookPlugin.php +++ b/plugins/Facebook/FacebookPlugin.php @@ -32,6 +32,7 @@ if (!defined('STATUSNET')) { } define("FACEBOOK_CONNECT_SERVICE", 3); +define('FACEBOOKPLUGIN_VERSION', '0.9'); require_once INSTALLDIR . '/plugins/Facebook/facebookutil.php'; @@ -554,4 +555,18 @@ class FacebookPlugin extends Plugin return true; } + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Facebook', + 'version' => FACEBOOKPLUGIN_VERSION, + 'author' => 'Zach Copley', + 'homepage' => 'http://status.net/wiki/Plugin:Facebook', + 'rawdescription' => + _m('The Facebook plugin allows you to integrate ' . + 'your StatusNet instance with ' . + '<a href="http://facebook.com/">Facebook</a> ' . + 'and Facebook Connect.')); + return true; + } + } diff --git a/plugins/Facebook/facebook/facebook.php b/plugins/Facebook/facebook/facebook.php index 016e8e8e0..440706cbc 100644 --- a/plugins/Facebook/facebook/facebook.php +++ b/plugins/Facebook/facebook/facebook.php @@ -82,7 +82,8 @@ class Facebook { if (isset($this->fb_params['friends'])) { - $this->api_client->friends_list = explode(',', $this->fb_params['friends']); + $this->api_client->friends_list = + array_filter(explode(',', $this->fb_params['friends'])); } if (isset($this->fb_params['added'])) { $this->api_client->added = $this->fb_params['added']; @@ -215,11 +216,15 @@ class Facebook { // Invalidate the session currently being used, and clear any state associated // with it. Note that the user will still remain logged into Facebook. public function expire_session() { - if ($this->api_client->auth_expireSession()) { + try { + if ($this->api_client->auth_expireSession()) { + $this->clear_cookie_state(); + return true; + } else { + return false; + } + } catch (Exception $e) { $this->clear_cookie_state(); - return true; - } else { - return false; } } @@ -249,10 +254,14 @@ class Facebook { if (!$this->in_fb_canvas() && isset($_COOKIE[$this->api_key . '_user'])) { $cookies = array('user', 'session_key', 'expires', 'ss'); foreach ($cookies as $name) { - setcookie($this->api_key . '_' . $name, false, time() - 3600); + setcookie($this->api_key . '_' . $name, + false, + time() - 3600, + '', + $this->base_domain); unset($_COOKIE[$this->api_key . '_' . $name]); } - setcookie($this->api_key, false, time() - 3600); + setcookie($this->api_key, false, time() - 3600, '', $this->base_domain); unset($_COOKIE[$this->api_key]); } diff --git a/plugins/Facebook/facebook/facebook_desktop.php b/plugins/Facebook/facebook/facebook_desktop.php index e79a2ca34..ed4762215 100644 --- a/plugins/Facebook/facebook/facebook_desktop.php +++ b/plugins/Facebook/facebook/facebook_desktop.php @@ -60,7 +60,7 @@ class FacebookDesktop extends Facebook { public function set_session_secret($session_secret) { $this->secret = $session_secret; - $this->api_client->secret = $session_secret; + $this->api_client->use_session_secret($session_secret); } public function require_login() { diff --git a/plugins/Facebook/facebook/facebook_mobile.php b/plugins/Facebook/facebook/facebook_mobile.php new file mode 100644 index 000000000..5ee7f4ed5 --- /dev/null +++ b/plugins/Facebook/facebook/facebook_mobile.php @@ -0,0 +1,260 @@ +<?php +// Copyright 2004-2009 Facebook. All Rights Reserved. +// +// +---------------------------------------------------------------------------+ +// | Facebook Platform PHP5 client | +// +---------------------------------------------------------------------------+ +// | Copyright (c) 2007 Facebook, Inc. | +// | All rights reserved. | +// | | +// | Redistribution and use in source and binary forms, with or without | +// | modification, are permitted provided that the following conditions | +// | are met: | +// | | +// | 1. Redistributions of source code must retain the above copyright | +// | notice, this list of conditions and the following disclaimer. | +// | 2. Redistributions in binary form must reproduce the above copyright | +// | notice, this list of conditions and the following disclaimer in the | +// | documentation and/or other materials provided with the distribution. | +// | | +// | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | +// | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | +// | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | +// | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | +// | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | +// | NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | +// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | +// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | +// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | +// | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | +// +---------------------------------------------------------------------------+ +// | For help with this library, contact developers-help@facebook.com | +// +---------------------------------------------------------------------------+ +// +/** + * This class extends and modifies the "Facebook" class to better suit wap + * apps. Since there is no javascript support, we need to use server redirect + * to implement Facebook connect functionalities such as authenticate, + * authorize, feed form etc.. This library provide many helper functions for + * wap developer to locate the right wap url. The url here is targed at + * facebook wap site or wap-friendly url. + */ +class FacebookMobile extends Facebook { + // the application secret, which differs from the session secret + + public function __construct($api_key, $secret, $generate_session_secret=false) { + parent::__construct($api_key, $secret, $generate_session_secret); + } + + public function redirect($url) { + header('Location: '. $url); + } + + public function get_m_url($action, $params) { + $page = parent::get_facebook_url('m'). '/' .$action; + foreach($params as $key => $val) { + if (!$val) { + unset($params[$key]); + } + } + return $page . '?' . http_build_query($params); + } + + public function get_www_url($action, $params) { + $page = parent::get_facebook_url('www'). '/' .$action; + foreach($params as $key => $val) { + if (!$val) { + unset($params[$key]); + } + } + return $page . '?' . http_build_query($params); + } + + public function get_add_url($next=null) { + + return $this->get_m_url('add.php', array('api_key' => $this->api_key, + 'next' => $next)); + } + + public function get_tos_url($next=null, $cancel = null, $canvas=null) { + return $this->get_m_url('tos.php', array('api_key' => $this->api_key, + 'v' => '1.0', + 'next' => $next, + 'canvas' => $canvas, + 'cancel' => $cancel)); + } + + public function get_logout_url($next=null) { + $params = array('api_key' => $this->api_key, + 'session_key' => $this->api_client->session_key, + ); + + if ($next) { + $params['connect_next'] = 1; + $params['next'] = $next; + } + + return $this->get_m_url('logout.php', $params); + } + public function get_register_url($next=null, $cancel_url=null) { + return $this->get_m_url('r.php', + array('fbconnect' => 1, + 'api_key' => $this->api_key, + 'next' => $next ? $next : parent::current_url(), + 'cancel_url' => $cancel_url ? $cancel_url : parent::current_url())); + } + /** + * These set of fbconnect style url redirect back to the application current + * page when the action is done. Developer can also use the non fbconnect + * style url and provide their own redirect link by giving the right parameter + * to $next and/or $cancel_url + */ + public function get_fbconnect_register_url() { + return $this->get_register_url(parent::current_url(), parent::current_url()); + } + public function get_fbconnect_tos_url() { + return $this->get_tos_url(parent::current_url(), parent::current_url(), $this->in_frame()); + } + + public function get_fbconnect_logout_url() { + return $this->get_logout_url(parent::current_url()); + } + + public function logout_user() { + $this->user = null; + } + + public function get_prompt_permissions_url($ext_perm, + $next=null, + $cancel_url=null) { + + return $this->get_www_url('connect/prompt_permissions.php', + array('api_key' => $this->api_key, + 'ext_perm' => $ext_perm, + 'next' => $next ? $next : parent::current_url(), + 'cancel' => $cancel_url ? $cancel_url : parent::current_url(), + 'display' => 'wap')); + + } + + /** + * support both prompt_permissions.php and authorize.php for now. + * authorized.php is to be deprecate though. + */ + public function get_extended_permission_url($ext_perm, + $next=null, + $cancel_url=null) { + $next = $next ? $next : parent::current_url(); + $cancel_url = $cancel_url ? $cancel_url : parent::current_url(); + + return $this->get_m_url('authorize.php', + array('api_key' => $this->api_key, + 'ext_perm' => $ext_perm, + 'next' => $next, + 'cancel_url' => $cancel_url)); + + } + + public function render_prompt_feed_url($action_links=NULL, + $target_id=NULL, + $message='', + $user_message_prompt='', + $caption=NULL, + $callback ='', + $cancel='', + $attachment=NULL, + $preview=true) { + + $params = array('api_key' => $this->api_key, + 'session_key' => $this->api_client->session_key, + ); + if (!empty($attachment)) { + $params['attachment'] = urlencode(json_encode($attachment)); + } else { + $attachment = new stdClass(); + $app_display_info = $this->api_client->admin_getAppProperties(array('application_name', + 'callback_url', + 'description', + 'logo_url')); + $app_display_info = $app_display_info; + $attachment->name = $app_display_info['application_name']; + $attachment->caption = !empty($caption) ? $caption : 'Just see what\'s new!'; + $attachment->description = $app_display_info['description']; + $attachment->href = $app_display_info['callback_url']; + if (!empty($app_display_info['logo_url'])) { + $logo = new stdClass(); + $logo->type = 'image'; + $logo->src = $app_display_info['logo_url']; + $logo->href = $app_display_info['callback_url']; + $attachment->media = array($logo); + } + $params['attachment'] = urlencode(json_encode($attachment)); + } + $params['preview'] = $preview; + $params['message'] = $message; + $params['user_message_prompt'] = $user_message_prompt; + if (!empty($callback)) { + $params['callback'] = $callback; + } else { + $params['callback'] = $this->current_url(); + } + if (!empty($cancel)) { + $params['cancel'] = $cancel; + } else { + $params['cancel'] = $this->current_url(); + } + + if (!empty($target_id)) { + $params['target_id'] = $target_id; + } + if (!empty($action_links)) { + $params['action_links'] = urlencode(json_encode($action_links)); + } + + $params['display'] = 'wap'; + header('Location: '. $this->get_www_url('connect/prompt_feed.php', $params)); + } + +//use template_id + public function render_feed_form_url($template_id=NULL, + $template_data=NULL, + $user_message=NULL, + $body_general=NULL, + $user_message_prompt=NULL, + $target_id=NULL, + $callback=NULL, + $cancel=NULL, + $preview=true) { + + $params = array('api_key' => $this->api_key); + $params['preview'] = $preview; + if (isset($template_id) && $template_id) { + $params['template_id'] = $template_id; + } + $params['message'] = $user_message ? $user_message['value'] : ''; + if (isset($body_general) && $body_general) { + $params['body_general'] = $body_general; + } + if (isset($user_message_prompt) && $user_message_prompt) { + $params['user_message_prompt'] = $user_message_prompt; + } + if (isset($callback) && $callback) { + $params['callback'] = $callback; + } else { + $params['callback'] = $this->current_url(); + } + if (isset($cancel) && $cancel) { + $params['cancel'] = $cancel; + } else { + $params['cancel'] = $this->current_url(); + } + if (isset($template_data) && $template_data) { + $params['template_data'] = $template_data; + } + if (isset($target_id) && $target_id) { + $params['to_ids'] = $target_id; + } + $params['display'] = 'wap'; + header('Location: '. $this->get_www_url('connect/prompt_feed.php', $params)); + } +} diff --git a/plugins/Facebook/facebook/facebookapi_php5_restlib.php b/plugins/Facebook/facebook/facebookapi_php5_restlib.php index 55cb7fb86..fa1088cd0 100755 --- a/plugins/Facebook/facebook/facebookapi_php5_restlib.php +++ b/plugins/Facebook/facebook/facebookapi_php5_restlib.php @@ -56,6 +56,8 @@ class FacebookRestClient { private $call_as_apikey; private $use_curl_if_available; private $format = null; + private $using_session_secret = false; + private $rawData = null; const BATCH_MODE_DEFAULT = 0; const BATCH_MODE_SERVER_PARALLEL = 0; @@ -76,7 +78,10 @@ class FacebookRestClient { $this->last_call_id = 0; $this->call_as_apikey = ''; $this->use_curl_if_available = true; - $this->server_addr = Facebook::get_facebook_url('api') . '/restserver.php'; + $this->server_addr = + Facebook::get_facebook_url('api') . '/restserver.php'; + $this->photo_server_addr = + Facebook::get_facebook_url('api-photo') . '/restserver.php'; if (!empty($GLOBALS['facebook_config']['debug'])) { $this->cur_id = 0; @@ -128,6 +133,16 @@ function toggleDisplay(id, type) { $this->user = $uid; } + + /** + * Switch to use the session secret instead of the app secret, + * for desktop and unsecured environment + */ + public function use_session_secret($session_secret) { + $this->secret = $session_secret; + $this->using_session_secret = true; + } + /** * Normally, if the cURL library/PHP extension is available, it is used for * HTTP transactions. This allows that behavior to be overridden, falling @@ -270,25 +285,35 @@ function toggleDisplay(id, type) { /** * Returns the session information available after current user logs in. * - * @param string $auth_token the token returned by - * auth_createToken or passed back to - * your callback_url. - * @param bool $generate_session_secret whether the session returned should - * include a session secret + * @param string $auth_token the token returned by auth_createToken or + * passed back to your callback_url. + * @param bool $generate_session_secret whether the session returned should + * include a session secret + * @param string $host_url the connect site URL for which the session is + * being generated. This parameter is optional, unless + * you want Facebook to determine which of several base domains + * to choose from. If this third argument isn't provided but + * there are several base domains, the first base domain is + * chosen. * * @return array An assoc array containing session_key, uid */ - public function auth_getSession($auth_token, $generate_session_secret=false) { + public function auth_getSession($auth_token, + $generate_session_secret = false, + $host_url = null) { if (!$this->pending_batch()) { - $result = $this->call_method('facebook.auth.getSession', - array('auth_token' => $auth_token, - 'generate_session_secret' => $generate_session_secret)); + $result = $this->call_method( + 'facebook.auth.getSession', + array('auth_token' => $auth_token, + 'generate_session_secret' => $generate_session_secret, + 'host_url' => $host_url)); $this->session_key = $result['session_key']; - if (!empty($result['secret']) && !$generate_session_secret) { - // desktop apps have a special secret - $this->secret = $result['secret']; - } + if (!empty($result['secret']) && !$generate_session_secret) { + // desktop apps have a special secret + $this->secret = $result['secret']; + } + return $result; } } @@ -519,7 +544,7 @@ function toggleDisplay(id, type) { return $this->call_upload_method('facebook.events.create', array('event_info' => $event_info), $file, - Facebook::get_facebook_url('api-photo') . '/restserver.php'); + $this->photo_server_addr); } else { return $this->call_method('facebook.events.create', array('event_info' => $event_info)); @@ -527,6 +552,27 @@ function toggleDisplay(id, type) { } /** + * Invites users to an event. If a session user exists, the session user + * must have permissions to invite friends to the event and $uids must contain + * a list of friend ids. Otherwise, the event must have been + * created by the app and $uids must contain users of the app. + * This method requires the 'create_event' extended permission to + * invite people on behalf of a user. + * + * @param $eid the event id + * @param $uids an array of users to invite + * @param $personal_message a string containing the user's message + * (text only) + * + */ + public function events_invite($eid, $uids, $personal_message) { + return $this->call_method('facebook.events.invite', + array('eid' => $eid, + 'uids' => $uids, + 'personal_message', $personal_message)); + } + + /** * Edits an existing event. Only works for events where application is admin. * * @param int $eid event id @@ -540,7 +586,7 @@ function toggleDisplay(id, type) { return $this->call_upload_method('facebook.events.edit', array('eid' => $eid, 'event_info' => $event_info), $file, - Facebook::get_facebook_url('api-photo') . '/restserver.php'); + $this->photo_server_addr); } else { return $this->call_method('facebook.events.edit', array('eid' => $eid, @@ -576,21 +622,7 @@ function toggleDisplay(id, type) { array('url' => $url)); } - /** - * Lets you insert text strings in their native language into the Facebook - * Translations database so they can be translated. - * - * @param array $native_strings An array of maps, where each map has a 'text' - * field and a 'description' field. - * - * @return int Number of strings uploaded. - */ - public function &fbml_uploadNativeStrings($native_strings) { - return $this->call_method('facebook.fbml.uploadNativeStrings', - array('native_strings' => json_encode($native_strings))); - } - - /** + /** * Associates a given "handle" with FBML markup so that the handle can be * used within the fb:ref FBML tag. A handle is unique within an application * and allows an application to publish identical FBML to many user profiles @@ -668,7 +700,44 @@ function toggleDisplay(id, type) { array('tag_names' => json_encode($tag_names))); } + /** + * Gets the best translations for native strings submitted by an application + * for translation. If $locale is not specified, only native strings and their + * descriptions are returned. If $all is true, then unapproved translations + * are returned as well, otherwise only approved translations are returned. + * + * A mapping of locale codes -> language names is available at + * http://wiki.developers.facebook.com/index.php/Facebook_Locales + * + * @param string $locale the locale to get translations for, or 'all' for all + * locales, or 'en_US' for native strings + * @param bool $all whether to return all or only approved translations + * + * @return array (locale, array(native_strings, array('best translation + * available given enough votes or manual approval', approval + * status))) + * @error API_EC_PARAM + * @error API_EC_PARAM_BAD_LOCALE + */ + public function &intl_getTranslations($locale = 'en_US', $all = false) { + return $this->call_method('facebook.intl.getTranslations', + array('locale' => $locale, + 'all' => $all)); + } + /** + * Lets you insert text strings in their native language into the Facebook + * Translations database so they can be translated. + * + * @param array $native_strings An array of maps, where each map has a 'text' + * field and a 'description' field. + * + * @return int Number of strings uploaded. + */ + public function &intl_uploadNativeStrings($native_strings) { + return $this->call_method('facebook.intl.uploadNativeStrings', + array('native_strings' => json_encode($native_strings))); + } /** * This method is deprecated for calls made on behalf of users. This method @@ -1249,6 +1318,87 @@ function toggleDisplay(id, type) { } /** + * Gifts API + */ + + /** + * Get Gifts associated with an app + * + * @return array of gifts + */ + public function gifts_get() { + return json_decode( + $this->call_method('facebook.gifts.get', + array()), + true + ); + } + + /* + * Update gifts stored by an app + * + * @param array containing gift_id => gift_data to be updated + * @return array containing gift_id => true/false indicating success + * in updating that gift + */ + public function gifts_update($update_array) { + return json_decode( + $this->call_method('facebook.gifts.update', + array('update_str' => json_encode($update_array)) + ), + true + ); + } + + /** + * Dashboard API + */ + + /** + * Set the news for the specified user. + * + * @param int $uid The user for whom you are setting news for + * @param string $news Text of news to display + * + * @return bool Success + */ + public function dashboard_setNews($uid, $news) { + return $this->call_method('facebook.dashboard.setNews', + array('uid' => $uid, + 'news' => $news) + ); + } + + /** + * Get the current news of the specified user. + * + * @param int $uid The user to get the news of + * + * @return string The text of the current news for the user + */ + public function dashboard_getNews($uid) { + return json_decode( + $this->call_method('facebook.dashboard.getNews', + array('uid' => $uid) + ), true); + } + + /** + * Set the news for the specified user. + * + * @param int $uid The user you are clearing the news of + * + * @return bool Success + */ + public function dashboard_clearNews($uid) { + return $this->call_method('facebook.dashboard.clearNews', + array('uid' => $uid) + ); + } + + + + /** * Creates a note with the specified title and content. * * @param string $title Title of the note. @@ -1795,14 +1945,20 @@ function toggleDisplay(id, type) { $start_time = 0, $end_time = 0, $limit = 30, - $filter_key = '') { + $filter_key = '', + $exportable_only = false, + $metadata = null, + $post_ids = null) { $args = array( 'viewer_id' => $viewer_id, 'source_ids' => $source_ids, 'start_time' => $start_time, 'end_time' => $end_time, 'limit' => $limit, - 'filter_key' => $filter_key); + 'filter_key' => $filter_key, + 'exportable_only' => $exportable_only, + 'metadata' => $metadata, + 'post_ids' => $post_ids); return $this->call_method('facebook.stream.get', $args); } @@ -1949,97 +2105,6 @@ function toggleDisplay(id, type) { 'options' => json_encode($options))); } - /** - * Get all the marketplace categories. - * - * @return array A list of category names - */ - function marketplace_getCategories() { - return $this->call_method('facebook.marketplace.getCategories', - array()); - } - - /** - * Get all the marketplace subcategories for a particular category. - * - * @param category The category for which we are pulling subcategories - * - * @return array A list of subcategory names - */ - function marketplace_getSubCategories($category) { - return $this->call_method('facebook.marketplace.getSubCategories', - array('category' => $category)); - } - - /** - * Get listings by either listing_id or user. - * - * @param listing_ids An array of listing_ids (optional) - * @param uids An array of user ids (optional) - * - * @return array The data for matched listings - */ - function marketplace_getListings($listing_ids, $uids) { - return $this->call_method('facebook.marketplace.getListings', - array('listing_ids' => $listing_ids, 'uids' => $uids)); - } - - /** - * Search for Marketplace listings. All arguments are optional, though at - * least one must be filled out to retrieve results. - * - * @param category The category in which to search (optional) - * @param subcategory The subcategory in which to search (optional) - * @param query A query string (optional) - * - * @return array The data for matched listings - */ - function marketplace_search($category, $subcategory, $query) { - return $this->call_method('facebook.marketplace.search', - array('category' => $category, - 'subcategory' => $subcategory, - 'query' => $query)); - } - - /** - * Remove a listing from Marketplace. - * - * @param listing_id The id of the listing to be removed - * @param status 'SUCCESS', 'NOT_SUCCESS', or 'DEFAULT' - * - * @return bool True on success - */ - function marketplace_removeListing($listing_id, - $status='DEFAULT', - $uid=null) { - return $this->call_method('facebook.marketplace.removeListing', - array('listing_id' => $listing_id, - 'status' => $status, - 'uid' => $uid)); - } - - /** - * Create/modify a Marketplace listing for the loggedinuser. - * - * @param int listing_id The id of a listing to be modified, 0 - * for a new listing. - * @param show_on_profile bool Should we show this listing on the - * user's profile - * @param listing_attrs array An array of the listing data - * - * @return int The listing_id (unchanged if modifying an existing listing). - */ - function marketplace_createListing($listing_id, - $show_on_profile, - $attrs, - $uid=null) { - return $this->call_method('facebook.marketplace.createListing', - array('listing_id' => $listing_id, - 'show_on_profile' => $show_on_profile, - 'listing_attrs' => json_encode($attrs), - 'uid' => $uid)); - } - ///////////////////////////////////////////////////////////////////////////// // Data Store API @@ -2876,6 +2941,35 @@ function toggleDisplay(id, type) { } /** + * Sets href and text for a Live Stream Box xid's via link + * + * @param string $xid xid of the Live Stream + * @param string $via_href Href for the via link + * @param string $via_text Text for the via link + * + * @return boolWhether the set was successful + */ + public function admin_setLiveStreamViaLink($xid, $via_href, $via_text) { + return $this->call_method('facebook.admin.setLiveStreamViaLink', + array('xid' => $xid, + 'via_href' => $via_href, + 'via_text' => $via_text)); + } + + /** + * Gets href and text for a Live Stream Box xid's via link + * + * @param string $xid xid of the Live Stream + * + * @return Array Associative array with keys 'via_href' and 'via_text' + * False if there was an error. + */ + public function admin_getLiveStreamViaLink($xid) { + return $this->call_method('facebook.admin.getLiveStreamViaLink', + array('xid' => $xid)); + } + + /** * Returns the allocation limit value for a specified integration point name * Integration point names are defined in lib/api/karma/constants.php in the * limit_map. @@ -3012,6 +3106,7 @@ function toggleDisplay(id, type) { $params['call_as_apikey'] = $this->call_as_apikey; } $data = $this->post_request($method, $params); + $this->rawData = $data; $result = $this->convert_result($data, $method, $params); if (is_array($result) && isset($result['error_code'])) { throw new FacebookRestClientException($result['error_msg'], @@ -3054,6 +3149,16 @@ function toggleDisplay(id, type) { } /** + * Returns the raw JSON or XML output returned by the server in the most + * recent API call. + * + * @return string + */ + public function getRawData() { + return $this->rawData; + } + + /** * Calls the specified file-upload POST method with the specified parameters * * @param string $method Name of the Facebook method to invoke @@ -3144,6 +3249,10 @@ function toggleDisplay(id, type) { if ($this->call_as_apikey) { $get['call_as_apikey'] = $this->call_as_apikey; } + if ($this->using_session_secret) { + $get['ss'] = '1'; + } + $get['method'] = $method; $get['session_key'] = $this->session_key; $get['api_key'] = $this->api_key; @@ -3241,7 +3350,7 @@ function toggleDisplay(id, type) { return $result; } - private function post_upload_request($method, $params, $file, $server_addr = null) { + protected function post_upload_request($method, $params, $file, $server_addr = null) { $server_addr = $server_addr ? $server_addr : $this->server_addr; list($get, $post) = $this->finalize_params($method, $params); $get_string = $this->create_url_string($get); @@ -3345,6 +3454,8 @@ class FacebookAPIErrorCodes { const API_EC_VERSION = 12; const API_EC_INTERNAL_FQL_ERROR = 13; const API_EC_HOST_PUP = 14; + const API_EC_SESSION_SECRET_NOT_ALLOWED = 15; + const API_EC_HOST_READONLY = 16; /* * PARAMETER ERRORS @@ -3372,6 +3483,8 @@ class FacebookAPIErrorCodes { const API_EC_PARAM_BAD_EID = 150; const API_EC_PARAM_UNKNOWN_CITY = 151; const API_EC_PARAM_BAD_PAGE_TYPE = 152; + const API_EC_PARAM_BAD_LOCALE = 170; + const API_EC_PARAM_BLOCKED_NOTIFICATION = 180; /* * USER PERMISSIONS ERRORS @@ -3394,6 +3507,7 @@ class FacebookAPIErrorCodes { const API_EC_PERMISSION_EVENT = 290; const API_EC_PERMISSION_LARGE_FBML_TEMPLATE = 291; const API_EC_PERMISSION_LIVEMESSAGE = 292; + const API_EC_PERMISSION_CREATE_EVENT = 296; const API_EC_PERMISSION_RSVP_EVENT = 299; /* @@ -3469,6 +3583,8 @@ class FacebookAPIErrorCodes { const FQL_EC_EXTENDED_PERMISSION = 612; const FQL_EC_RATE_LIMIT_EXCEEDED = 613; const FQL_EC_UNRESOLVED_DEPENDENCY = 614; + const FQL_EC_INVALID_SEARCH = 615; + const FQL_EC_CONTAINS_ERROR = 616; const API_EC_REF_SET_FAILED = 700; @@ -3506,6 +3622,7 @@ class FacebookAPIErrorCodes { * EVENT API ERRORS */ const API_EC_EVENT_INVALID_TIME = 1000; + const API_EC_EVENT_NAME_LOCKED = 1001; /* * INFO BOX ERRORS @@ -3566,6 +3683,21 @@ class FacebookAPIErrorCodes { const API_EC_COMMENTS_INVALID_POST = 1705; const API_EC_COMMENTS_INVALID_REMOVE = 1706; + /* + * GIFTS + */ + const API_EC_GIFTS_UNKNOWN = 1900; + + /* + * APPLICATION MORATORIUM ERRORS + */ + const API_EC_DISABLED_ALL = 2000; + const API_EC_DISABLED_STATUS = 2001; + const API_EC_DISABLED_FEED_STORIES = 2002; + const API_EC_DISABLED_NOTIFICATIONS = 2003; + const API_EC_DISABLED_REQUESTS = 2004; + const API_EC_DISABLED_EMAIL = 2005; + /** * This array is no longer maintained; to view the description of an error * code, please look at the message element of the API response or visit diff --git a/plugins/Facebook/facebookaction.php b/plugins/Facebook/facebookaction.php index 24bf215fd..bf9c037a5 100644 --- a/plugins/Facebook/facebookaction.php +++ b/plugins/Facebook/facebookaction.php @@ -32,7 +32,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { } require_once INSTALLDIR . '/plugins/Facebook/facebookutil.php'; -require_once INSTALLDIR . '/lib/noticeform.php'; +require_once INSTALLDIR . '/plugins/Facebook/facebooknoticeform.php'; class FacebookAction extends Action { @@ -294,63 +294,7 @@ class FacebookAction extends Action $app_props = $this->facebook->api_client->Admin_getAppProperties(array('icon_url')); $icon_url = $app_props['icon_url']; - $style = '<style> - .entry-title *, - .entry-content * { - font-size:14px; - font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif; - } - .entry-title a, - .entry-content a { - color:#002E6E; - } - - .entry-title .vcard .photo { - float:left; - display:inline; - margin-right:11px; - margin-bottom:11px - } - .entry-title { - margin-bottom:11px; - } - .entry-title p.entry-content { - display:inline; - margin-left:5px; - } - - div.entry-content { - clear:both; - } - div.entry-content dl, - div.entry-content dt, - div.entry-content dd { - display:inline; - text-transform:lowercase; - } - - div.entry-content dd, - div.entry-content .device dt { - margin-left:0; - margin-right:5px; - } - div.entry-content dl.timestamp dt, - div.entry-content dl.response dt { - display:none; - } - div.entry-content dd a { - display:inline-block; - } - - #facebook_statusnet_app { - text-indent:-9999px; - height:16px; - width:16px; - display:block; - background:url('.$icon_url.') no-repeat 0 0; - float:right; - } - </style>'; + $style = '<style> .entry-title *, .entry-content * { font-size:14px; font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif; } .entry-title a, .entry-content a { color:#002E6E; } .entry-title .vcard .photo { float:left; display:inline; margin-right:11px; margin-bottom:11px } .entry-title { margin-bottom:11px; } .entry-title p.entry-content { display:inline; margin-left:5px; } div.entry-content { clear:both; } div.entry-content dl, div.entry-content dt, div.entry-content dd { display:inline; text-transform:lowercase; } div.entry-content dd, div.entry-content .device dt { margin-left:0; margin-right:5px; } div.entry-content dl.timestamp dt, div.entry-content dl.response dt { display:none; } div.entry-content dd a { display:inline-block; } #facebook_statusnet_app { text-indent:-9999px; height:16px; width:16px; display:block; background:url('.$icon_url.') no-repeat 0 0; float:right; } </style>'; $this->xw->openMemory(); @@ -455,42 +399,6 @@ class FacebookAction extends Action common_broadcast_notice($notice); - // Also update the user's Facebook status - facebookBroadcastNotice($notice); - - } - -} - -class FacebookNoticeForm extends NoticeForm -{ - - var $post_action = null; - - /** - * Constructor - * - * @param HTMLOutputter $out output channel - * @param string $action action to return to, if any - * @param string $content content to pre-fill - */ - - function __construct($out=null, $action=null, $content=null, - $post_action=null, $user=null) - { - parent::__construct($out, $action, $content, $user); - $this->post_action = $post_action; - } - - /** - * Action of the form - * - * @return string URL of the action - */ - - function action() - { - return $this->post_action; } } diff --git a/plugins/Facebook/facebooknoticeform.php b/plugins/Facebook/facebooknoticeform.php new file mode 100644 index 000000000..5989147f4 --- /dev/null +++ b/plugins/Facebook/facebooknoticeform.php @@ -0,0 +1,206 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Form for posting a notice from within the Facebook App. + * + * This is a stripped down version of the normal NoticeForm (sans + * location stuff and media upload stuff). I'm not sure we can share the + * location (from FB) and they don't allow posting multipart form data + * to Facebook canvas pages, so that won't work anyway. --Zach + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Form + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @author Sarven Capadisli <csarven@status.net> + * @author Zach Copley <zach@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET') && !defined('LACONICA')) { + exit(1); +} + +require_once INSTALLDIR . '/lib/form.php'; + +/** + * Form for posting a notice from within the Facebook app + * + * @category Form + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @author Sarven Capadisli <csarven@status.net> + * @author Zach Copey <zach@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + * + * @see HTMLOutputter + */ + +class FacebookNoticeForm extends Form +{ + /** + * Current action, used for returning to this page. + */ + + var $action = null; + + /** + * Pre-filled content of the form + */ + + var $content = null; + + /** + * The current user + */ + + var $user = null; + + /** + * The notice being replied to + */ + + var $inreplyto = null; + + /** + * Constructor + * + * @param HTMLOutputter $out output channel + * @param string $action action to return to, if any + * @param string $content content to pre-fill + */ + + function __construct($out=null, $action=null, $content=null, $post_action=null, $user=null, $inreplyto=null) + { + parent::__construct($out); + + $this->action = $action; + $this->post_action = $post_action; + $this->content = $content; + $this->inreplyto = $inreplyto; + + if ($user) { + $this->user = $user; + } else { + $this->user = common_current_user(); + } + + // Note: Facebook doesn't allow multipart/form-data posting to + // canvas pages, so don't try to set it--no file uploads, at + // least not this way. It can be done using multiple servers + // and iFrames, but it's a pretty hacky process. + } + + /** + * ID of the form + * + * @return string ID of the form + */ + + function id() + { + return 'form_notice'; + } + + /** + * Class of the form + * + * @return string class of the form + */ + + function formClass() + { + return 'form_notice'; + } + + /** + * Action of the form + * + * @return string URL of the action + */ + + function action() + { + return $this->post_action; + } + + /** + * Legend of the Form + * + * @return void + */ + function formLegend() + { + $this->out->element('legend', null, _('Send a notice')); + } + + /** + * Data elements + * + * @return void + */ + + function formData() + { + if (Event::handle('StartShowNoticeFormData', array($this))) { + $this->out->element('label', array('for' => 'notice_data-text'), + sprintf(_('What\'s up, %s?'), $this->user->nickname)); + // XXX: vary by defined max size + $this->out->element('textarea', array('id' => 'notice_data-text', + 'cols' => 35, + 'rows' => 4, + 'name' => 'status_textarea'), + ($this->content) ? $this->content : ''); + + $contentLimit = Notice::maxContent(); + + if ($contentLimit > 0) { + $this->out->elementStart('dl', 'form_note'); + $this->out->element('dt', null, _('Available characters')); + $this->out->element('dd', array('id' => 'notice_text-count'), + $contentLimit); + $this->out->elementEnd('dl'); + } + + if ($this->action) { + $this->out->hidden('notice_return-to', $this->action, 'returnto'); + } + $this->out->hidden('notice_in-reply-to', $this->inreplyto, 'inreplyto'); + + Event::handle('StartShowNoticeFormData', array($this)); + } + } + + /** + * Action elements + * + * @return void + */ + + function formActions() + { + $this->out->element('input', array('id' => 'notice_action-submit', + 'class' => 'submit', + 'name' => 'status_submit', + 'type' => 'submit', + 'value' => _('Send'))); + } +} diff --git a/plugins/Facebook/facebookutil.php b/plugins/Facebook/facebookutil.php index 2ec6db6b8..ac532e18b 100644 --- a/plugins/Facebook/facebookutil.php +++ b/plugins/Facebook/facebookutil.php @@ -138,21 +138,23 @@ function facebookBroadcastNotice($notice) $code = $e->getCode(); - common_log(LOG_WARNING, 'Facebook returned error code ' . - $code . ': ' . $e->getMessage()); - common_log(LOG_WARNING, - 'Unable to update Facebook status for ' . - "$user->nickname (user id: $user->id)!"); + $msg = "Facebook returned error code $code: " . + $e->getMessage() . ' - ' . + "Unable to update Facebook status (notice $notice->id) " . + "for $user->nickname (user id: $user->id)!"; - if ($code == 200 || $code == 250) { + common_log(LOG_WARNING, $msg); + if ($code == 100 || $code == 200 || $code == 250) { + + // 100 The account is 'inactive' (probably - this is not well documented) // 200 The application does not have permission to operate on the passed in uid parameter. // 250 Updating status requires the extended permission status_update or publish_stream. // see: http://wiki.developers.facebook.com/index.php/Users.setStatus#Example_Return_XML remove_facebook_app($flink); - } else { + } else { // Try sending again later. diff --git a/plugins/FeedSub/FeedSubPlugin.php b/plugins/FeedSub/FeedSubPlugin.php index 857a9794d..e49e2a648 100644 --- a/plugins/FeedSub/FeedSubPlugin.php +++ b/plugins/FeedSub/FeedSubPlugin.php @@ -105,12 +105,11 @@ class FeedSubPlugin extends Plugin return true; } - /* - // auto increment seems to be broken function onCheckSchema() { + // warning: the autoincrement doesn't seem to set. + // alter table feedinfo change column id id int(11) not null auto_increment; $schema = Schema::get(); - $schema->ensureDataObject('Feedinfo'); + $schema->ensureTable('feedinfo', Feedinfo::schemaDef()); return true; } - */ } diff --git a/plugins/FeedSub/feedinfo.php b/plugins/FeedSub/feedinfo.php index fff66afe9..b166bd6e1 100644 --- a/plugins/FeedSub/feedinfo.php +++ b/plugins/FeedSub/feedinfo.php @@ -31,7 +31,7 @@ class FeedDBException extends FeedSubException } } -class Feedinfo extends Plugin_DataObject +class Feedinfo extends Memcached_DataObject { public $__table = 'feedinfo'; @@ -56,34 +56,90 @@ class Feedinfo extends Plugin_DataObject return parent::staticGet(__CLASS__, $k, $v); } - function tableDef() + /** + * return table definition for DB_DataObject + * + * DB_DataObject needs to know something about the table to manipulate + * instances. This method provides all the DB_DataObject needs to know. + * + * @return array array of column definitions + */ + + function table() + { + return array('id' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL, + 'profile_id' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL, + 'feeduri' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL, + 'homeuri' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL, + 'huburi' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL, + 'verify_token' => DB_DATAOBJECT_STR, + 'sub_start' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME, + 'sub_end' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME, + 'created' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL, + 'lastupdate' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL); + } + + static function schemaDef() + { + return array(new ColumnDef('id', 'integer', + /*size*/ null, + /*nullable*/ false, + /*key*/ 'PRI', + /*default*/ '0', + /*extra*/ null, + /*auto_increment*/ true), + new ColumnDef('profile_id', 'integer', + null, false), + new ColumnDef('feeduri', 'varchar', + 255, false, 'UNI'), + new ColumnDef('homeuri', 'varchar', + 255, false), + new ColumnDef('huburi', 'varchar', + 255, false), + new ColumnDef('verify_token', 'varchar', + 32, true), + new ColumnDef('sub_start', 'datetime', + null, true), + new ColumnDef('sub_end', 'datetime', + null, true), + new ColumnDef('created', 'datetime', + null, false), + new ColumnDef('lastupdate', 'datetime', + null, false)); + } + + /** + * return key definitions for DB_DataObject + * + * DB_DataObject needs to know about keys that the table has; this function + * defines them. + * + * @return array key definitions + */ + + function keys() { - class_exists('Schema'); // autoload hack - // warning: the autoincrement doesn't seem to set. - // alter table feedinfo change column id id int(11) not null auto_increment; - return new TableDef($this->__table, - array(new ColumnDef('id', 'integer', - null, false, 'PRI', '0', null, true), - new ColumnDef('profile_id', 'integer', - null, false), - new ColumnDef('feeduri', 'varchar', - 255, false, 'UNI'), - new ColumnDef('homeuri', 'varchar', - 255, false), - new ColumnDef('huburi', 'varchar', - 255, false), - new ColumnDef('verify_token', 'varchar', - 32, true), - new ColumnDef('sub_start', 'datetime', - null, true), - new ColumnDef('sub_end', 'datetime', - null, true), - new ColumnDef('created', 'datetime', - null, false), - new ColumnDef('lastupdate', 'datetime', - null, false))); + return array('id' => 'P'); //? } + /** + * return key definitions for Memcached_DataObject + * + * Our caching system uses the same key definitions, but uses a different + * method to get them. + * + * @return array key definitions + */ + + function keyTypes() + { + return $this->keys(); + } + + /** + * Fetch the StatusNet-side profile for this feed + * @return Profile + */ public function getProfile() { return Profile::staticGet('id', $this->profile_id); diff --git a/plugins/GeoURLPlugin.php b/plugins/GeoURLPlugin.php index 30ff2c278..01178f39c 100644 --- a/plugins/GeoURLPlugin.php +++ b/plugins/GeoURLPlugin.php @@ -116,4 +116,16 @@ class GeoURLPlugin extends Plugin return true; } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'GeoURL', + 'version' => STATUSNET_VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:GeoURL', + 'rawdescription' => + _m('Ping <a href="http://geourl.org/">GeoURL</a> when '. + 'new geolocation-enhanced notices are posted.')); + return true; + } } diff --git a/plugins/GeonamesPlugin.php b/plugins/GeonamesPlugin.php index 805166eaa..52cc9c97f 100644 --- a/plugins/GeonamesPlugin.php +++ b/plugins/GeonamesPlugin.php @@ -426,4 +426,16 @@ class GeonamesPlugin extends Plugin return $document->geoname; } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Geonames', + 'version' => STATUSNET_VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:Geonames', + 'rawdescription' => + _m('Uses <a href="http://geonames.org/">Geonames</a> service to get human-readable '. + 'names for locations based on user-provided lat/long pairs.')); + return true; + } } diff --git a/plugins/GoogleAnalyticsPlugin.php b/plugins/GoogleAnalyticsPlugin.php index 6891ee6a7..c646bf113 100644 --- a/plugins/GoogleAnalyticsPlugin.php +++ b/plugins/GoogleAnalyticsPlugin.php @@ -70,4 +70,16 @@ class GoogleAnalyticsPlugin extends Plugin $action->inlineScript($js1); $action->inlineScript($js2); } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'GoogleAnalytics', + 'version' => STATUSNET_VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:GoogleAnalytics', + 'rawdescription' => + _m('Use <a href="http://www.google.com/analytics/">Google Analytics</a>'. + ' to track Web access.')); + return true; + } } diff --git a/plugins/Imap/ImapPlugin.php b/plugins/Imap/ImapPlugin.php new file mode 100644 index 000000000..034444222 --- /dev/null +++ b/plugins/Imap/ImapPlugin.php @@ -0,0 +1,85 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Plugin to add a StatusNet Facebook application + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * IMAP plugin to allow StatusNet to grab incoming emails and handle them as new user posts + * + * @category Plugin + * @package StatusNet + * @author Craig Andrews <candrews@integralblue.com + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ +class ImapPlugin extends Plugin +{ + public $mailbox; + public $user; + public $password; + public $poll_frequency = 60; + public static $instances = array(); + public static $daemon_added = array(); + + function initialize(){ + if(!isset($this->mailbox)){ + throw new Exception("must specify a mailbox"); + } + if(!isset($this->user)){ + throw new Exception("must specify a user"); + } + if(!isset($this->password)){ + throw new Exception("must specify a password"); + } + if(!isset($this->poll_frequency)){ + throw new Exception("must specify a poll_frequency"); + } + + self::$instances[] = $this; + return true; + } + + function cleanup(){ + $index = array_search($this, self::$instances); + unset(self::$instances[$index]); + return true; + } + + function onGetValidDaemons($daemons) + { + if(! self::$daemon_added){ + array_push($daemons, INSTALLDIR . + '/plugins/Imap/imapdaemon.php'); + self::$daemon_added = true; + } + return true; + } +} diff --git a/plugins/Imap/README b/plugins/Imap/README new file mode 100644 index 000000000..640a411a8 --- /dev/null +++ b/plugins/Imap/README @@ -0,0 +1,32 @@ +The IMAP plugin allows for StatusNet to check a POP or IMAP mailbox for +incoming mail containing user posts. + +Installation +============ +addPlugin('imap', array( + 'mailbox' => '...', + 'user' => '...', + 'password' => '...' +)); +to the bottom of your config.php + +Also, make sure: +$config['mail']['domain'] = 'yourdomain.example.net'; +is set in your config.php + +Create a catch-all account for your domain, and use this account with this +plugin. Whenever a user sends a message to their personal notice posting +address, the message should end up in this mailbox, and then the plugin daemon +will pick it up and post the notice on the user's behalf. + +The daemon included with this plugin must be running. It will be started by +the plugin along with their other daemons when you run scripts/startdaemons.sh. +See the StatusNet README for more about queuing and daemons. + +Settings +======== +mailbox*: the mailbox specifier. + See http://www.php.net/manual/en/function.imap-open.php for details +user*: username to use when authenticating to the mailbox +password*: password to use when authenticating to the mailbox +poll_frequency: how often (in seconds) to check for new messages diff --git a/plugins/Imap/imapdaemon.php b/plugins/Imap/imapdaemon.php new file mode 100755 index 000000000..a45c603ce --- /dev/null +++ b/plugins/Imap/imapdaemon.php @@ -0,0 +1,147 @@ +#!/usr/bin/env php +<?php +/* + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2008, 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +define('INSTALLDIR', realpath(dirname(__FILE__) . '/../..')); + +$shortoptions = 'fi::'; +$longoptions = array('id::', 'foreground'); + +$helptext = <<<END_OF_IMAP_HELP +Daemon script for receiving new notices from users via a mail box (IMAP, POP3, etc) + + -i --id Identity (default none) + -f --foreground Stay in the foreground (default background) + +END_OF_IMAP_HELP; + +require_once INSTALLDIR.'/scripts/commandline.inc'; + +require_once INSTALLDIR . '/lib/common.php'; +require_once INSTALLDIR . '/lib/daemon.php'; +require_once INSTALLDIR.'/lib/mailhandler.php'; + +class IMAPDaemon extends Daemon +{ + function __construct($resource=null, $daemonize=true, $attrs) + { + parent::__construct($daemonize); + + foreach ($attrs as $attr=>$value) + { + $this->$attr = $value; + } + + $this->log(LOG_INFO, "INITIALIZE IMAPDaemon {" . $this->name() . "}"); + } + + function name() + { + return strtolower('imapdaemon.'.$this->user.'.'.crc32($this->mailbox)); + } + + function run() + { + $this->connect(); + while(true) + { + if(imap_ping($this->conn) || $this->connect()) + { + $this->check_mailbox(); + } + sleep($this->poll_frequency); + } + } + + function check_mailbox() + { + $count = imap_num_msg($this->conn); + $this->log(LOG_INFO, "Found $count messages"); + if($count > 0){ + $handler = new IMAPMailHandler(); + for($i=1; $i <= $count; $i++) + { + $rawmessage = imap_fetchheader($this->conn, $count, FT_PREFETCHTEXT) . imap_body($this->conn, $i); + $handler->handle_message($rawmessage); + imap_delete($this->conn, $i); + } + imap_expunge($this->conn); + $this->log(LOG_INFO, "Finished processing messages"); + } + } + + function log($level, $msg) + { + $text = $this->name() . ': '.$msg; + common_log($level, $text); + if (!$this->daemonize) + { + $line = common_log_line($level, $text); + echo $line; + echo "\n"; + } + } + + function connect() + { + $this->conn = imap_open($this->mailbox, $this->user, $this->password); + if($this->conn){ + $this->log(LOG_INFO, "Connected"); + return true; + }else{ + $this->log(LOG_INFO, "Failed to connect: " . imap_last_error()); + return false; + } + } +} + +class IMAPMailHandler extends MailHandler +{ + function error($from, $msg) + { + $this->log(LOG_INFO, "Error: $from $msg"); + $headers['To'] = $from; + $headers['Subject'] = "Error"; + + return mail_send(array($from), $headers, $msg); + } +} + +if (have_option('i', 'id')) { + $id = get_option_value('i', 'id'); +} else if (count($args) > 0) { + $id = $args[0]; +} else { + $id = null; +} + +$foreground = have_option('f', 'foreground'); + +foreach(ImapPlugin::$instances as $pluginInstance){ + + $daemon = new IMAPDaemon($id, !$foreground, array( + 'mailbox' => $pluginInstance->mailbox, + 'user' => $pluginInstance->user, + 'password' => $pluginInstance->password, + 'poll_frequency' => $pluginInstance->poll_frequency + )); + + $daemon->runOnce(); + +} diff --git a/plugins/LdapAuthentication/LdapAuthenticationPlugin.php b/plugins/LdapAuthentication/LdapAuthenticationPlugin.php index 39967fe42..c14fa21a9 100644 --- a/plugins/LdapAuthentication/LdapAuthenticationPlugin.php +++ b/plugins/LdapAuthentication/LdapAuthenticationPlugin.php @@ -31,7 +31,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } -require_once INSTALLDIR.'/plugins/Authentication/AuthenticationPlugin.php'; require_once 'Net/LDAP2.php'; class LdapAuthenticationPlugin extends AuthenticationPlugin @@ -75,8 +74,6 @@ class LdapAuthenticationPlugin extends AuthenticationPlugin case 'MemcacheSchemaCache': require_once(INSTALLDIR.'/plugins/LdapAuthentication/MemcacheSchemaCache.php'); return false; - default: - return parent::onAutoload($cls); } } diff --git a/plugins/LdapAuthorization/LdapAuthorizationPlugin.php b/plugins/LdapAuthorization/LdapAuthorizationPlugin.php index 5e759c379..e5e22c0dd 100644 --- a/plugins/LdapAuthorization/LdapAuthorizationPlugin.php +++ b/plugins/LdapAuthorization/LdapAuthorizationPlugin.php @@ -31,7 +31,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } -require_once INSTALLDIR.'/plugins/Authorization/AuthorizationPlugin.php'; require_once 'Net/LDAP2.php'; class LdapAuthorizationPlugin extends AuthorizationPlugin @@ -53,7 +52,6 @@ class LdapAuthorizationPlugin extends AuthorizationPlugin public $attributes = array(); function onInitializePlugin(){ - parent::onInitializePlugin(); if(!isset($this->host)){ throw new Exception("must specify a host"); } diff --git a/plugins/LilUrl/LilUrlPlugin.php b/plugins/LilUrl/LilUrlPlugin.php index 4a6f1cdc7..c3e37c0c0 100644 --- a/plugins/LilUrl/LilUrlPlugin.php +++ b/plugins/LilUrl/LilUrlPlugin.php @@ -46,9 +46,9 @@ class LilUrlPlugin extends UrlShortenerPlugin protected function shorten($url) { $data = array('longurl' => $url); - + $responseBody = $this->http_post($this->serviceUrl,$data); - + if (!$responseBody) return; $y = @simplexml_load_string($responseBody); if (!isset($y->body)) return; @@ -57,5 +57,18 @@ class LilUrlPlugin extends UrlShortenerPlugin return strval($x['href']); } } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => sprintf('LilUrl (%s)', $this->shortenerName), + 'version' => STATUSNET_VERSION, + 'author' => 'Craig Andrews', + 'homepage' => 'http://status.net/wiki/Plugin:LilUrl', + 'rawdescription' => + sprintf(_m('Uses <a href="http://%1$s/">%1$s</a> URL-shortener service.'), + $this->shortenerName)); + + return true; + } } diff --git a/plugins/LinkbackPlugin.php b/plugins/LinkbackPlugin.php index f220fff8f..15e57ab0e 100644 --- a/plugins/LinkbackPlugin.php +++ b/plugins/LinkbackPlugin.php @@ -231,4 +231,18 @@ class LinkbackPlugin extends Plugin return 'LinkbackPlugin/'.LINKBACKPLUGIN_VERSION . ' StatusNet/' . STATUSNET_VERSION; } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Linkback', + 'version' => LINKBACKPLUGIN_VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:Linkback', + 'rawdescription' => + _m('Notify blog authors when their posts have been linked in '. + 'microblog notices using '. + '<a href="http://www.hixie.ch/specs/pingback/pingback">Pingback</a> '. + 'or <a href="http://www.movabletype.org/docs/mttrackback.html">Trackback</a> protocols.')); + return true; + } } diff --git a/plugins/Mapstraction/MapstractionPlugin.php b/plugins/Mapstraction/MapstractionPlugin.php index 93679e56c..868933fd4 100644 --- a/plugins/Mapstraction/MapstractionPlugin.php +++ b/plugins/Mapstraction/MapstractionPlugin.php @@ -47,6 +47,8 @@ if (!defined('STATUSNET')) { class MapstractionPlugin extends Plugin { + const VERSION = STATUSNET_VERSION; + /** provider name, one of: 'cloudmade', 'google', 'microsoft', 'openlayers', 'yahoo' */ public $provider = 'openlayers'; @@ -192,4 +194,17 @@ class MapstractionPlugin extends Plugin $action->elementEnd('div'); } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Mapstraction', + 'version' => self::VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:Mapstraction', + 'rawdescription' => + _m('Show maps of users\' and friends\' notices '. + 'with <a href="http://www.mapstraction.com/">Mapstraction</a> '. + 'JavaScript library.')); + return true; + } } diff --git a/plugins/MemcachePlugin.php b/plugins/MemcachePlugin.php new file mode 100644 index 000000000..5f93e9a83 --- /dev/null +++ b/plugins/MemcachePlugin.php @@ -0,0 +1,191 @@ +<?php +/** + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * Plugin to implement cache interface for memcache + * + * PHP version 5 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * A plugin to use memcache for the cache interface + * + * This used to be encoded as config-variable options in the core code; + * it's now broken out to a separate plugin. The same interface can be + * implemented by other plugins. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class MemcachePlugin extends Plugin +{ + private $_conn = null; + public $servers = array('127.0.0.1;11211'); + + public $compressThreshold = 20480; + public $compressMinSaving = 0.2; + + public $persistent = null; + + /** + * Initialize the plugin + * + * Note that onStartCacheGet() may have been called before this! + * + * @return boolean flag value + */ + + function onInitializePlugin() + { + if (is_null($this->persistent)) { + $this->persistent = (php_sapi_name() == 'cli') ? false : true; + } + $this->_ensureConn(); + return true; + } + + /** + * Get a value associated with a key + * + * The value should have been set previously. + * + * @param string &$key in; Lookup key + * @param mixed &$value out; value associated with key + * + * @return boolean hook success + */ + + function onStartCacheGet(&$key, &$value) + { + $this->_ensureConn(); + $value = $this->_conn->get($key); + Event::handle('EndCacheGet', array($key, &$value)); + return false; + } + + /** + * Associate a value with a key + * + * @param string &$key in; Key to use for lookups + * @param mixed &$value in; Value to associate + * @param integer &$flag in; Flag (passed through to Memcache) + * @param integer &$expiry in; Expiry (passed through to Memcache) + * @param boolean &$success out; Whether the set was successful + * + * @return boolean hook success + */ + + function onStartCacheSet(&$key, &$value, &$flag, &$expiry, &$success) + { + $this->_ensureConn(); + $success = $this->_conn->set($key, $value, $flag, $expiry); + Event::handle('EndCacheSet', array($key, $value, $flag, + $expiry)); + return false; + } + + /** + * Delete a value associated with a key + * + * @param string &$key in; Key to lookup + * @param boolean &$success out; whether it worked + * + * @return boolean hook success + */ + + function onStartCacheDelete(&$key, &$success) + { + $this->_ensureConn(); + $success = $this->_conn->delete($key); + Event::handle('EndCacheDelete', array($key)); + return false; + } + + /** + * Ensure that a connection exists + * + * Checks the instance $_conn variable and connects + * if it is empty. + * + * @return void + */ + + private function _ensureConn() + { + if (empty($this->_conn)) { + $this->_conn = new Memcache(); + + if (is_array($this->servers)) { + foreach ($this->servers as $server) { + list($host, $port) = explode(';', $server); + if (empty($port)) { + $port = 11211; + } + + $this->_conn->addServer($host, $port, $this->persistent); + } + } else { + $this->_conn->addServer($this->servers, $this->persistent); + list($host, $port) = explode(';', $this->servers); + if (empty($port)) { + $port = 11211; + } + $this->_conn->addServer($host, $port, $this->persistent); + } + + // Compress items stored in the cache if they're over threshold in size + // (default 2KiB) and the compression would save more than min savings + // ratio (default 0.2). + + // Allows the cache to store objects larger than 1MB (if they + // compress to less than 1MB), and improves cache memory efficiency. + + $this->_conn->setCompressThreshold($this->compressThreshold, + $this->compressMinSaving); + } + } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Memcache', + 'version' => STATUSNET_VERSION, + 'author' => 'Evan Prodromou, Craig Andrews', + 'homepage' => 'http://status.net/wiki/Plugin:Memcache', + 'rawdescription' => + _m('Use <a href="http://memcached.org/">Memcached</a> to cache query results.')); + return true; + } +} + diff --git a/plugins/Minify/MinifyPlugin.php b/plugins/Minify/MinifyPlugin.php index 71fade19a..718bfd163 100644 --- a/plugins/Minify/MinifyPlugin.php +++ b/plugins/Minify/MinifyPlugin.php @@ -84,7 +84,7 @@ class MinifyPlugin extends Plugin function onStartScriptElement($action,&$src,&$type) { $url = parse_url($src); - if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment)) + if( empty($url['scheme']) && empty($url['host']) && empty($url['query']) && empty($url['fragment'])) { $src = $this->minifyUrl($src); } diff --git a/plugins/Mollom/MollomPlugin.php b/plugins/Mollom/MollomPlugin.php new file mode 100644 index 000000000..4c82c481a --- /dev/null +++ b/plugins/Mollom/MollomPlugin.php @@ -0,0 +1,893 @@ +<?php +/** + * Laconica, the distributed open-source microblogging tool + * + * Plugin to check submitted notices with Mollom + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * Mollom is a bayesian spam checker, wrapped into a webservice + * This plugin is based on the Drupal Mollom module + * + * @category Plugin + * @package Laconica + * @author Brenda Wallace <brenda@cpan.org> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +define('MOLLOMPLUGIN_VERSION', '0.1'); +define('MOLLOM_API_VERSION', '1.0'); + +define('MOLLOM_ANALYSIS_UNKNOWN' , 0); +define('MOLLOM_ANALYSIS_HAM' , 1); +define('MOLLOM_ANALYSIS_SPAM' , 2); +define('MOLLOM_ANALYSIS_UNSURE' , 3); + +define('MOLLOM_MODE_DISABLED', 0); +define('MOLLOM_MODE_CAPTCHA' , 1); +define('MOLLOM_MODE_ANALYSIS', 2); + +define('MOLLOM_FALLBACK_BLOCK' , 0); +define('MOLLOM_FALLBACK_ACCEPT', 1); + +define('MOLLOM_ERROR' , 1000); +define('MOLLOM_REFRESH' , 1100); +define('MOLLOM_REDIRECT', 1200); + +/** + * Plugin to check submitted notices with Mollom + * + * Mollom is a bayesian spam filter provided by webservice. + * + * @category Plugin + * @package Laconica + * @author Brenda Wallace <shiny@cpan.org> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * + * @see Event + */ + + + +class MollomPlugin extends Plugin +{ + public $public_key; + public $private_key; + public $servers; + + function onStartNoticeSave($notice) + { + if ( $this->public_key ) { + //Check spam + $data = array( + 'post_body' => $notice->content, + 'author_name' => $profile->nickname, + 'author_url' => $profile->homepage, + 'author_id' => $profile->id, + 'author_ip' => $this->getClientIp(), + ); + $response = $this->mollom('mollom.checkContent', $data); + if ($response['spam'] == MOLLOM_ANALYSIS_SPAM) { + throw new ClientException(_("Spam Detected"), 400); + } + if ($response['spam'] == MOLLOM_ANALYSIS_UNSURE) { + //if unsure, let through + } + if($response['spam'] == MOLLOM_ANALYSIS_HAM) { + // all good! :-) + } + } + + return true; + } + + function getClientIP() { + if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { + // Note: order matters here; use proxy-forwarded stuff first + foreach (array('HTTP_X_FORWARDED_FOR', 'CLIENT-IP', 'REMOTE_ADDR') as $k) { + if (isset($_SERVER[$k])) { + return $_SERVER[$k]; + } + } + } + return '127.0.0.1'; + } + /** + * Call a remote procedure at the Mollom server. This function will + * automatically add the information required to authenticate against + * Mollom. + */ + function mollom($method, $data = array()) { + if (!extension_loaded('xmlrpc')) { + if (!dl('xmlrpc.so')) { + common_log(LOG_ERR, "Can't pingback; xmlrpc extension not available."); + } + } + + // Construct the server URL: + $public_key = $this->public_key; + // Retrieve the list of Mollom servers from the database: + $servers = $this->servers; + + if ($servers == NULL) { + // Retrieve a list of valid Mollom servers from mollom.com: + $servers = $this->xmlrpc('http://xmlrpc.mollom.com/'. MOLLOM_API_VERSION, 'mollom.getServerList', $this->authentication()); + + // Store the list of servers in the database: + // TODO! variable_set('mollom_servers', $servers); + } + + if (is_array($servers)) { + // Send the request to the first server, if that fails, try the other servers in the list: + foreach ($servers as $server) { + $auth = $this->authentication(); + $data = array_merge($data, $auth); + $result = $this->xmlrpc($server .'/'. MOLLOM_API_VERSION, $method, $data); + + // Debug output: + if (isset($data['session_id'])) { + common_debug("called $method at server $server with session ID '". $data['session_id'] ."'"); + } + else { + common_debug("called $method at server $server with no session ID"); + } + + if ($errno = $this->xmlrpc_errno()) { + common_log(LOG_ERR, sprintf('Error @errno: %s - %s - %s - <pre>%s</pre>', $this->xmlrpc_errno(), $server, $this->xmlrpc_error_msg(), $method, print_r($data, TRUE))); + + if ($errno == MOLLOM_REFRESH) { + // Retrieve a list of valid Mollom servers from mollom.com: + $servers = $this->xmlrpc('http://xmlrpc.mollom.com/'. MOLLOM_API_VERSION, 'mollom.getServerList', $this->authentication()); + + // Store the updated list of servers in the database: + //tODO variable_set('mollom_servers', $servers); + } + else if ($errno == MOLLOM_ERROR) { + return $result; + } + else if ($errno == MOLLOM_REDIRECT) { + // Do nothing, we select the next client automatically. + } + + // Reset the XMLRPC error: + $this->xmlrpc_error(0); // FIXME: this is crazy. + } + else { + common_debug("Result = " . print_r($result, TRUE)); + return $result; + } + } + } + + // If none of the servers worked, activate the fallback mechanism: + common_debug("none of the servers worked"); + // _mollom_fallback(); + + // If everything failed, we reset the server list to force Mollom to request a new list: + //TODO variable_set('mollom_servers', array()); + } + + /** + * This function generate an array with all the information required to + * authenticate against Mollom. To prevent that requests are forged and + * that you are impersonated, each request is signed with a hash computed + * based on a private key and a timestamp. + * + * Both the client and the server share the secret key that is used to + * create the authentication hash based on a timestamp. They both hash + * the timestamp with the secret key, and if the hashes match, the + * authenticity of the message has been validated. + * + * To avoid that someone can intercept a (hash, timestamp)-pair and + * use that to impersonate a client, Mollom will reject the request + * when the timestamp is more than 15 minutes off. + * + * Make sure your server's time is synchronized with the world clocks, + * and that you don't share your private key with anyone else. + */ + private function authentication() { + + $public_key = $this->public_key; + $private_key = $this->private_key; + + // Generate a timestamp according to the dateTime format (http://www.w3.org/TR/xmlschema-2/#dateTime): + $time = gmdate("Y-m-d\TH:i:s.\\0\\0\\0O", time()); + + // Calculate a HMAC-SHA1 according to RFC2104 (http://www.ietf.org/rfc/rfc2104.txt): + $hash = base64_encode( + pack("H*", sha1((str_pad($private_key, 64, chr(0x00)) ^ (str_repeat(chr(0x5c), 64))) . + pack("H*", sha1((str_pad($private_key, 64, chr(0x00)) ^ (str_repeat(chr(0x36), 64))) . + $time)))) + ); + + // Store everything in an array. Elsewhere in the code, we'll add the + // acutal data before we pass it onto the XML-RPC library: + $data['public_key'] = $public_key; + $data['time'] = $time; + $data['hash'] = $hash; + + return $data; + } + + + function xmlrpc($url) { + //require_once './includes/xmlrpc.inc'; + $args = func_get_args(); + return call_user_func_array(array('MollomPlugin', '_xmlrpc'), $args); + } + + /** + * Recursively turn a data structure into objects with 'data' and 'type' attributes. + * + * @param $data + * The data structure. + * @param $type + * Optional type assign to $data. + * @return + * Object. + */ + function xmlrpc_value($data, $type = FALSE) { + $xmlrpc_value = new stdClass(); + $xmlrpc_value->data = $data; + if (!$type) { + $type = $this->xmlrpc_value_calculate_type($xmlrpc_value); + } + $xmlrpc_value->type = $type; + if ($type == 'struct') { + // Turn all the values in the array into new xmlrpc_values + foreach ($xmlrpc_value->data as $key => $value) { + $xmlrpc_value->data[$key] = $this->xmlrpc_value($value); + } + } + if ($type == 'array') { + for ($i = 0, $j = count($xmlrpc_value->data); $i < $j; $i++) { + $xmlrpc_value->data[$i] = $this->xmlrpc_value($xmlrpc_value->data[$i]); + } + } + return $xmlrpc_value; + } + + /** + * Map PHP type to XML-RPC type. + * + * @param $xmlrpc_value + * Variable whose type should be mapped. + * @return + * XML-RPC type as string. + * @see + * http://www.xmlrpc.com/spec#scalars + */ + function xmlrpc_value_calculate_type(&$xmlrpc_value) { + // http://www.php.net/gettype: Never use gettype() to test for a certain type [...] Instead, use the is_* functions. + if (is_bool($xmlrpc_value->data)) { + return 'boolean'; + } + if (is_double($xmlrpc_value->data)) { + return 'double'; + } + if (is_int($xmlrpc_value->data)) { + return 'int'; + } + if (is_array($xmlrpc_value->data)) { + // empty or integer-indexed arrays are 'array', string-indexed arrays 'struct' + return empty($xmlrpc_value->data) || range(0, count($xmlrpc_value->data) - 1) === array_keys($xmlrpc_value->data) ? 'array' : 'struct'; + } + if (is_object($xmlrpc_value->data)) { + if ($xmlrpc_value->data->is_date) { + return 'date'; + } + if ($xmlrpc_value->data->is_base64) { + return 'base64'; + } + $xmlrpc_value->data = get_object_vars($xmlrpc_value->data); + return 'struct'; + } + // default + return 'string'; + } + +/** + * Generate XML representing the given value. + * + * @param $xmlrpc_value + * @return + * XML representation of value. + */ +function xmlrpc_value_get_xml($xmlrpc_value) { + switch ($xmlrpc_value->type) { + case 'boolean': + return '<boolean>'. (($xmlrpc_value->data) ? '1' : '0') .'</boolean>'; + break; + case 'int': + return '<int>'. $xmlrpc_value->data .'</int>'; + break; + case 'double': + return '<double>'. $xmlrpc_value->data .'</double>'; + break; + case 'string': + // Note: we don't escape apostrophes because of the many blogging clients + // that don't support numerical entities (and XML in general) properly. + return '<string>'. htmlspecialchars($xmlrpc_value->data) .'</string>'; + break; + case 'array': + $return = '<array><data>'."\n"; + foreach ($xmlrpc_value->data as $item) { + $return .= ' <value>'. $this->xmlrpc_value_get_xml($item) ."</value>\n"; + } + $return .= '</data></array>'; + return $return; + break; + case 'struct': + $return = '<struct>'."\n"; + foreach ($xmlrpc_value->data as $name => $value) { + $return .= " <member><name>". htmlentities($name) ."</name><value>"; + $return .= $this->xmlrpc_value_get_xml($value) ."</value></member>\n"; + } + $return .= '</struct>'; + return $return; + break; + case 'date': + return $this->xmlrpc_date_get_xml($xmlrpc_value->data); + break; + case 'base64': + return $this->xmlrpc_base64_get_xml($xmlrpc_value->data); + break; + } + return FALSE; +} + + /** + * Perform an HTTP request. + * + * This is a flexible and powerful HTTP client implementation. Correctly handles + * GET, POST, PUT or any other HTTP requests. Handles redirects. + * + * @param $url + * A string containing a fully qualified URI. + * @param $headers + * An array containing an HTTP header => value pair. + * @param $method + * A string defining the HTTP request to use. + * @param $data + * A string containing data to include in the request. + * @param $retry + * An integer representing how many times to retry the request in case of a + * redirect. + * @return + * An object containing the HTTP request headers, response code, headers, + * data and redirect status. + */ + function http_request($url, $headers = array(), $method = 'GET', $data = NULL, $retry = 3) { + global $db_prefix; + + $result = new stdClass(); + + // Parse the URL and make sure we can handle the schema. + $uri = parse_url($url); + + if ($uri == FALSE) { + $result->error = 'unable to parse URL'; + return $result; + } + + if (!isset($uri['scheme'])) { + $result->error = 'missing schema'; + return $result; + } + + switch ($uri['scheme']) { + case 'http': + $port = isset($uri['port']) ? $uri['port'] : 80; + $host = $uri['host'] . ($port != 80 ? ':'. $port : ''); + $fp = @fsockopen($uri['host'], $port, $errno, $errstr, 15); + break; + case 'https': + // Note: Only works for PHP 4.3 compiled with OpenSSL. + $port = isset($uri['port']) ? $uri['port'] : 443; + $host = $uri['host'] . ($port != 443 ? ':'. $port : ''); + $fp = @fsockopen('ssl://'. $uri['host'], $port, $errno, $errstr, 20); + break; + default: + $result->error = 'invalid schema '. $uri['scheme']; + return $result; + } + + // Make sure the socket opened properly. + if (!$fp) { + // When a network error occurs, we use a negative number so it does not + // clash with the HTTP status codes. + $result->code = -$errno; + $result->error = trim($errstr); + + // Mark that this request failed. This will trigger a check of the web + // server's ability to make outgoing HTTP requests the next time that + // requirements checking is performed. + // @see system_requirements() + //TODO variable_set('drupal_http_request_fails', TRUE); + + return $result; + } + + // Construct the path to act on. + $path = isset($uri['path']) ? $uri['path'] : '/'; + if (isset($uri['query'])) { + $path .= '?'. $uri['query']; + } + + // Create HTTP request. + $defaults = array( + // RFC 2616: "non-standard ports MUST, default ports MAY be included". + // We don't add the port to prevent from breaking rewrite rules checking the + // host that do not take into account the port number. + 'Host' => "Host: $host", + 'User-Agent' => 'User-Agent: Drupal (+http://drupal.org/)', + 'Content-Length' => 'Content-Length: '. strlen($data) + ); + + // If the server url has a user then attempt to use basic authentication + if (isset($uri['user'])) { + $defaults['Authorization'] = 'Authorization: Basic '. base64_encode($uri['user'] . (!empty($uri['pass']) ? ":". $uri['pass'] : '')); + } + + // If the database prefix is being used by SimpleTest to run the tests in a copied + // database then set the user-agent header to the database prefix so that any + // calls to other Drupal pages will run the SimpleTest prefixed database. The + // user-agent is used to ensure that multiple testing sessions running at the + // same time won't interfere with each other as they would if the database + // prefix were stored statically in a file or database variable. + if (is_string($db_prefix) && preg_match("/^simpletest\d+$/", $db_prefix, $matches)) { + $defaults['User-Agent'] = 'User-Agent: ' . $matches[0]; + } + + foreach ($headers as $header => $value) { + $defaults[$header] = $header .': '. $value; + } + + $request = $method .' '. $path ." HTTP/1.0\r\n"; + $request .= implode("\r\n", $defaults); + $request .= "\r\n\r\n"; + $request .= $data; + + $result->request = $request; + + fwrite($fp, $request); + + // Fetch response. + $response = ''; + while (!feof($fp) && $chunk = fread($fp, 1024)) { + $response .= $chunk; + } + fclose($fp); + + // Parse response. + list($split, $result->data) = explode("\r\n\r\n", $response, 2); + $split = preg_split("/\r\n|\n|\r/", $split); + + list($protocol, $code, $text) = explode(' ', trim(array_shift($split)), 3); + $result->headers = array(); + + // Parse headers. + while ($line = trim(array_shift($split))) { + list($header, $value) = explode(':', $line, 2); + if (isset($result->headers[$header]) && $header == 'Set-Cookie') { + // RFC 2109: the Set-Cookie response header comprises the token Set- + // Cookie:, followed by a comma-separated list of one or more cookies. + $result->headers[$header] .= ','. trim($value); + } + else { + $result->headers[$header] = trim($value); + } + } + + $responses = array( + 100 => 'Continue', 101 => 'Switching Protocols', + 200 => 'OK', 201 => 'Created', 202 => 'Accepted', 203 => 'Non-Authoritative Information', 204 => 'No Content', 205 => 'Reset Content', 206 => 'Partial Content', + 300 => 'Multiple Choices', 301 => 'Moved Permanently', 302 => 'Found', 303 => 'See Other', 304 => 'Not Modified', 305 => 'Use Proxy', 307 => 'Temporary Redirect', + 400 => 'Bad Request', 401 => 'Unauthorized', 402 => 'Payment Required', 403 => 'Forbidden', 404 => 'Not Found', 405 => 'Method Not Allowed', 406 => 'Not Acceptable', 407 => 'Proxy Authentication Required', 408 => 'Request Time-out', 409 => 'Conflict', 410 => 'Gone', 411 => 'Length Required', 412 => 'Precondition Failed', 413 => 'Request Entity Too Large', 414 => 'Request-URI Too Large', 415 => 'Unsupported Media Type', 416 => 'Requested range not satisfiable', 417 => 'Expectation Failed', + 500 => 'Internal Server Error', 501 => 'Not Implemented', 502 => 'Bad Gateway', 503 => 'Service Unavailable', 504 => 'Gateway Time-out', 505 => 'HTTP Version not supported' + ); + // RFC 2616 states that all unknown HTTP codes must be treated the same as the + // base code in their class. + if (!isset($responses[$code])) { + $code = floor($code / 100) * 100; + } + + switch ($code) { + case 200: // OK + case 304: // Not modified + break; + case 301: // Moved permanently + case 302: // Moved temporarily + case 307: // Moved temporarily + $location = $result->headers['Location']; + + if ($retry) { + $result = drupal_http_request($result->headers['Location'], $headers, $method, $data, --$retry); + $result->redirect_code = $result->code; + } + $result->redirect_url = $location; + + break; + default: + $result->error = $text; + } + + $result->code = $code; + return $result; + } + + /** + * Construct an object representing an XML-RPC message. + * + * @param $message + * String containing XML as defined at http://www.xmlrpc.com/spec + * @return + * Object + */ + function xmlrpc_message($message) { + $xmlrpc_message = new stdClass(); + $xmlrpc_message->array_structs = array(); // The stack used to keep track of the current array/struct + $xmlrpc_message->array_structs_types = array(); // The stack used to keep track of if things are structs or array + $xmlrpc_message->current_struct_name = array(); // A stack as well + $xmlrpc_message->message = $message; + return $xmlrpc_message; + } + + /** + * Parse an XML-RPC message. If parsing fails, the faultCode and faultString + * will be added to the message object. + * + * @param $xmlrpc_message + * Object generated by xmlrpc_message() + * @return + * TRUE if parsing succeeded; FALSE otherwise + */ + function xmlrpc_message_parse(&$xmlrpc_message) { + // First remove the XML declaration + $xmlrpc_message->message = preg_replace('/<\?xml(.*)?\?'.'>/', '', $xmlrpc_message->message); + if (trim($xmlrpc_message->message) == '') { + return FALSE; + } + $xmlrpc_message->_parser = xml_parser_create(); + // Set XML parser to take the case of tags into account. + xml_parser_set_option($xmlrpc_message->_parser, XML_OPTION_CASE_FOLDING, FALSE); + // Set XML parser callback functions + xml_set_element_handler($xmlrpc_message->_parser, array('MollomPlugin', 'xmlrpc_message_tag_open'), array('MollomPlugin', 'xmlrpc_message_tag_close')); + xml_set_character_data_handler($xmlrpc_message->_parser, array('MollomPlugin', 'xmlrpc_message_cdata')); + $this->xmlrpc_message_set($xmlrpc_message); + if (!xml_parse($xmlrpc_message->_parser, $xmlrpc_message->message)) { + return FALSE; + } + xml_parser_free($xmlrpc_message->_parser); + // Grab the error messages, if any + $xmlrpc_message = $this->xmlrpc_message_get(); + if ($xmlrpc_message->messagetype == 'fault') { + $xmlrpc_message->fault_code = $xmlrpc_message->params[0]['faultCode']; + $xmlrpc_message->fault_string = $xmlrpc_message->params[0]['faultString']; + } + return TRUE; + } + + /** + * Store a copy of the $xmlrpc_message object temporarily. + * + * @param $value + * Object + * @return + * The most recently stored $xmlrpc_message + */ + function xmlrpc_message_set($value = NULL) { + static $xmlrpc_message; + if ($value) { + $xmlrpc_message = $value; + } + return $xmlrpc_message; + } + + function xmlrpc_message_get() { + return $this->xmlrpc_message_set(); + } + + function xmlrpc_message_tag_open($parser, $tag, $attr) { + $xmlrpc_message = $this->xmlrpc_message_get(); + $xmlrpc_message->current_tag_contents = ''; + $xmlrpc_message->last_open = $tag; + switch ($tag) { + case 'methodCall': + case 'methodResponse': + case 'fault': + $xmlrpc_message->messagetype = $tag; + break; + // Deal with stacks of arrays and structs + case 'data': + $xmlrpc_message->array_structs_types[] = 'array'; + $xmlrpc_message->array_structs[] = array(); + break; + case 'struct': + $xmlrpc_message->array_structs_types[] = 'struct'; + $xmlrpc_message->array_structs[] = array(); + break; + } + $this->xmlrpc_message_set($xmlrpc_message); + } + + function xmlrpc_message_cdata($parser, $cdata) { + $xmlrpc_message = $this->xmlrpc_message_get(); + $xmlrpc_message->current_tag_contents .= $cdata; + $this->xmlrpc_message_set($xmlrpc_message); + } + + function xmlrpc_message_tag_close($parser, $tag) { + $xmlrpc_message = $this->xmlrpc_message_get(); + $value_flag = FALSE; + switch ($tag) { + case 'int': + case 'i4': + $value = (int)trim($xmlrpc_message->current_tag_contents); + $value_flag = TRUE; + break; + case 'double': + $value = (double)trim($xmlrpc_message->current_tag_contents); + $value_flag = TRUE; + break; + case 'string': + $value = $xmlrpc_message->current_tag_contents; + $value_flag = TRUE; + break; + case 'dateTime.iso8601': + $value = xmlrpc_date(trim($xmlrpc_message->current_tag_contents)); + // $value = $iso->getTimestamp(); + $value_flag = TRUE; + break; + case 'value': + // If no type is indicated, the type is string + // We take special care for empty values + if (trim($xmlrpc_message->current_tag_contents) != '' || (isset($xmlrpc_message->last_open) && ($xmlrpc_message->last_open == 'value'))) { + $value = (string)$xmlrpc_message->current_tag_contents; + $value_flag = TRUE; + } + unset($xmlrpc_message->last_open); + break; + case 'boolean': + $value = (boolean)trim($xmlrpc_message->current_tag_contents); + $value_flag = TRUE; + break; + case 'base64': + $value = base64_decode(trim($xmlrpc_message->current_tag_contents)); + $value_flag = TRUE; + break; + // Deal with stacks of arrays and structs + case 'data': + case 'struct': + $value = array_pop($xmlrpc_message->array_structs ); + array_pop($xmlrpc_message->array_structs_types); + $value_flag = TRUE; + break; + case 'member': + array_pop($xmlrpc_message->current_struct_name); + break; + case 'name': + $xmlrpc_message->current_struct_name[] = trim($xmlrpc_message->current_tag_contents); + break; + case 'methodName': + $xmlrpc_message->methodname = trim($xmlrpc_message->current_tag_contents); + break; + } + if ($value_flag) { + if (count($xmlrpc_message->array_structs ) > 0) { + // Add value to struct or array + if ($xmlrpc_message->array_structs_types[count($xmlrpc_message->array_structs_types)-1] == 'struct') { + // Add to struct + $xmlrpc_message->array_structs [count($xmlrpc_message->array_structs )-1][$xmlrpc_message->current_struct_name[count($xmlrpc_message->current_struct_name)-1]] = $value; + } + else { + // Add to array + $xmlrpc_message->array_structs [count($xmlrpc_message->array_structs )-1][] = $value; + } + } + else { + // Just add as a parameter + $xmlrpc_message->params[] = $value; + } + } + if (!in_array($tag, array("data", "struct", "member"))) { + $xmlrpc_message->current_tag_contents = ''; + } + $this->xmlrpc_message_set($xmlrpc_message); + } + + /** + * Construct an object representing an XML-RPC request + * + * @param $method + * The name of the method to be called + * @param $args + * An array of parameters to send with the method. + * @return + * Object + */ + function xmlrpc_request($method, $args) { + $xmlrpc_request = new stdClass(); + $xmlrpc_request->method = $method; + $xmlrpc_request->args = $args; + $xmlrpc_request->xml = <<<EOD + <?xml version="1.0"?> + <methodCall> + <methodName>{$xmlrpc_request->method}</methodName> + <params> + +EOD; + foreach ($xmlrpc_request->args as $arg) { + $xmlrpc_request->xml .= '<param><value>'; + $v = $this->xmlrpc_value($arg); + $xmlrpc_request->xml .= $this->xmlrpc_value_get_xml($v); + $xmlrpc_request->xml .= "</value></param>\n"; + } + $xmlrpc_request->xml .= '</params></methodCall>'; + return $xmlrpc_request; + } + + + function xmlrpc_error($code = NULL, $message = NULL, $reset = FALSE) { + static $xmlrpc_error; + if (isset($code)) { + $xmlrpc_error = new stdClass(); + $xmlrpc_error->is_error = TRUE; + $xmlrpc_error->code = $code; + $xmlrpc_error->message = $message; + } + elseif ($reset) { + $xmlrpc_error = NULL; + } + return $xmlrpc_error; + } + + function xmlrpc_error_get_xml($xmlrpc_error) { + return <<<EOD + <methodResponse> + <fault> + <value> + <struct> + <member> + <name>faultCode</name> + <value><int>{$xmlrpc_error->code}</int></value> + </member> + <member> + <name>faultString</name> + <value><string>{$xmlrpc_error->message}</string></value> + </member> + </struct> + </value> + </fault> + </methodResponse> + +EOD; + } + + function xmlrpc_date($time) { + $xmlrpc_date = new stdClass(); + $xmlrpc_date->is_date = TRUE; + // $time can be a PHP timestamp or an ISO one + if (is_numeric($time)) { + $xmlrpc_date->year = gmdate('Y', $time); + $xmlrpc_date->month = gmdate('m', $time); + $xmlrpc_date->day = gmdate('d', $time); + $xmlrpc_date->hour = gmdate('H', $time); + $xmlrpc_date->minute = gmdate('i', $time); + $xmlrpc_date->second = gmdate('s', $time); + $xmlrpc_date->iso8601 = gmdate('Ymd\TH:i:s', $time); + } + else { + $xmlrpc_date->iso8601 = $time; + $time = str_replace(array('-', ':'), '', $time); + $xmlrpc_date->year = substr($time, 0, 4); + $xmlrpc_date->month = substr($time, 4, 2); + $xmlrpc_date->day = substr($time, 6, 2); + $xmlrpc_date->hour = substr($time, 9, 2); + $xmlrpc_date->minute = substr($time, 11, 2); + $xmlrpc_date->second = substr($time, 13, 2); + } + return $xmlrpc_date; + } + + function xmlrpc_date_get_xml($xmlrpc_date) { + return '<dateTime.iso8601>'. $xmlrpc_date->year . $xmlrpc_date->month . $xmlrpc_date->day .'T'. $xmlrpc_date->hour .':'. $xmlrpc_date->minute .':'. $xmlrpc_date->second .'</dateTime.iso8601>'; + } + + function xmlrpc_base64($data) { + $xmlrpc_base64 = new stdClass(); + $xmlrpc_base64->is_base64 = TRUE; + $xmlrpc_base64->data = $data; + return $xmlrpc_base64; + } + + function xmlrpc_base64_get_xml($xmlrpc_base64) { + return '<base64>'. base64_encode($xmlrpc_base64->data) .'</base64>'; + } + + /** + * Execute an XML remote procedural call. This is private function; call xmlrpc() + * in common.inc instead of this function. + * + * @return + * A $xmlrpc_message object if the call succeeded; FALSE if the call failed + */ + function _xmlrpc() { + $args = func_get_args(); + $url = array_shift($args); + $this->xmlrpc_clear_error(); + if (is_array($args[0])) { + $method = 'system.multicall'; + $multicall_args = array(); + foreach ($args[0] as $call) { + $multicall_args[] = array('methodName' => array_shift($call), 'params' => $call); + } + $args = array($multicall_args); + } + else { + $method = array_shift($args); + } + $xmlrpc_request = $this->xmlrpc_request($method, $args); + $result = $this->http_request($url, array("Content-Type" => "text/xml"), 'POST', $xmlrpc_request->xml); + if ($result->code != 200) { + $this->xmlrpc_error($result->code, $result->error); + return FALSE; + } + $message = $this->xmlrpc_message($result->data); + // Now parse what we've got back + if (!$this->xmlrpc_message_parse($message)) { + // XML error + $this->xmlrpc_error(-32700, t('Parse error. Not well formed')); + return FALSE; + } + // Is the message a fault? + if ($message->messagetype == 'fault') { + $this->xmlrpc_error($message->fault_code, $message->fault_string); + return FALSE; + } + // Message must be OK + return $message->params[0]; + } + + /** + * Returns the last XML-RPC client error number + */ + function xmlrpc_errno() { + $error = $this->xmlrpc_error(); + return ($error != NULL ? $error->code : NULL); + } + + /** + * Returns the last XML-RPC client error message + */ + function xmlrpc_error_msg() { + $error = xmlrpc_error(); + return ($error != NULL ? $error->message : NULL); + } + + /** + * Clears any previous error. + */ + function xmlrpc_clear_error() { + $this->xmlrpc_error(NULL, NULL, TRUE); + } + +} diff --git a/plugins/Mollom/README b/plugins/Mollom/README new file mode 100644 index 000000000..2b8c2d8a0 --- /dev/null +++ b/plugins/Mollom/README @@ -0,0 +1,22 @@ +The mollom plugin uses mollom.com to filter SN notices for spam. + +== Dependencies == +Your webserver needs to have xmlrpc php extention loaded. +This is called php5-xmlrpc in Debian/Ubuntu + +== Installation == +Add the following to your config.php +<?php +addPlugin('Mollom', + array( + 'public_key' => '...', + 'private_key' => '...', + 'servers' => array('http://88.151.243.81', 'http://82.103.131.136') + ) +); + +?> + +replace '...' with your own public and private keys for your site, which you can get from mollom.com + +If you're using this plugin, i'd love to know about it -- shiny@cpan.org or shiny on freenode. diff --git a/plugins/OpenID/OpenIDPlugin.php b/plugins/OpenID/OpenIDPlugin.php index a37d5465e..248afe3fa 100644 --- a/plugins/OpenID/OpenIDPlugin.php +++ b/plugins/OpenID/OpenIDPlugin.php @@ -70,7 +70,7 @@ class OpenIDPlugin extends Plugin $m->connect('index.php?action=finishopenidlogin', array('action' => 'finishopenidlogin')); $m->connect('index.php?action=finishaddopenid', array('action' => 'finishaddopenid')); $m->connect('main/openidserver', array('action' => 'openidserver')); - + return true; } @@ -101,11 +101,11 @@ class OpenIDPlugin extends Plugin 'xmlns:simple' => 'http://xrds-simple.net/core/1.0', 'version' => '2.0')); $xrdsOutputter->element('Type', null, 'xri://$xrds*simple'); - + //consumer $xrdsOutputter->showXrdsService('http://specs.openid.net/auth/2.0/return_to', common_local_url('finishopenidlogin')); - + //provider $xrdsOutputter->showXrdsService('http://specs.openid.net/auth/2.0/signon', common_local_url('openidserver'), @@ -308,4 +308,15 @@ class OpenIDPlugin extends Plugin $tables[] = 'User_openid_trustroot'; return true; } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'OpenID', + 'version' => STATUSNET_VERSION, + 'author' => 'Evan Prodromou, Craig Andrews', + 'homepage' => 'http://status.net/wiki/Plugin:OpenID', + 'rawdescription' => + _m('Use <a href="http://openid.net/">OpenID</a> to login to the site.')); + return true; + } } diff --git a/plugins/OpenID/User_openid_trustroot.php b/plugins/OpenID/User_openid_trustroot.php index 44288945b..0b411b8f7 100644 --- a/plugins/OpenID/User_openid_trustroot.php +++ b/plugins/OpenID/User_openid_trustroot.php @@ -22,7 +22,7 @@ class User_openid_trustroot extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - function &pkeyGet($kv) + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('User_openid_trustroot', $kv); } diff --git a/plugins/PiwikAnalyticsPlugin.php b/plugins/PiwikAnalyticsPlugin.php index fefd09867..b353d7255 100644 --- a/plugins/PiwikAnalyticsPlugin.php +++ b/plugins/PiwikAnalyticsPlugin.php @@ -97,4 +97,16 @@ ENDOFPIWIK; $action->inlineScript($piwikCode2); return true; } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'PiwikAnalytics', + 'version' => STATUSNET_VERSION, + 'author' => 'Tobias Diekershoff, Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:Piwik', + 'rawdescription' => + _m('Use <a href="http://piwik.org/">Piwik</a> Open Source Web analytics software.')); + return true; + } + } diff --git a/plugins/PoweredByStatusNet/PoweredByStatusNetPlugin.php b/plugins/PoweredByStatusNet/PoweredByStatusNetPlugin.php index 460550518..bae6c529d 100644 --- a/plugins/PoweredByStatusNet/PoweredByStatusNetPlugin.php +++ b/plugins/PoweredByStatusNet/PoweredByStatusNetPlugin.php @@ -31,6 +31,16 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } +/** + * Outputs 'powered by StatusNet' after site name + * + * @category Plugin + * @package StatusNet + * @author Sarven Capadisli <csarven@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + class PoweredByStatusNetPlugin extends Plugin { function onEndAddressData($action) @@ -42,4 +52,15 @@ class PoweredByStatusNetPlugin extends Plugin return true; } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'PoweredByStatusNet', + 'version' => STATUSNET_VERSION, + 'author' => 'Sarven Capdaisli', + 'homepage' => 'http://status.net/wiki/Plugin:PoweredByStatusNet', + 'rawdescription' => + _m('Outputs powered by <a href="http://status.net/">StatusNet</a> after site name.')); + return true; + } } diff --git a/plugins/PtitUrl/PtitUrlPlugin.php b/plugins/PtitUrl/PtitUrlPlugin.php index 76a438dd5..ddba942e6 100644 --- a/plugins/PtitUrl/PtitUrlPlugin.php +++ b/plugins/PtitUrl/PtitUrlPlugin.php @@ -56,5 +56,18 @@ class PtitUrlPlugin extends UrlShortenerPlugin return strval($xml['href']); } } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => sprintf('PtitUrl (%s)', $this->shortenerName), + 'version' => STATUSNET_VERSION, + 'author' => 'Craig Andrews', + 'homepage' => 'http://status.net/wiki/Plugin:PtitUrl', + 'rawdescription' => + sprintf(_m('Uses <a href="http://%1$s/">%1$s</a> URL-shortener service.'), + $this->shortenerName)); + + return true; + } } diff --git a/plugins/RSSCloud/LoggingAggregator.php b/plugins/RSSCloud/LoggingAggregator.php new file mode 100644 index 000000000..e37eed16a --- /dev/null +++ b/plugins/RSSCloud/LoggingAggregator.php @@ -0,0 +1,140 @@ +<?php +/** + * This test class pretends to be an RSS aggregator. It logs notifications + * from the cloud. + * + * PHP version 5 + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Dummy aggregator that acts as a proper notification handler. It + * doesn't do anything but respond correctly when notified via + * REST. Mostly, this is just and action I used to develop the plugin + * and easily test things end-to-end. I'm leaving it in here as it + * may be useful for developing the plugin further. + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + **/ +class LoggingAggregatorAction extends Action +{ + + var $challenge = null; + var $url = null; + + /** + * Initialization. + * + * @param array $args Web and URL arguments + * + * @return boolean false if user doesn't exist + */ + + function prepare($args) + { + parent::prepare($args); + + $this->url = $this->arg('url'); + $this->challenge = $this->arg('challenge'); + + common_debug("args = " . var_export($this->args, true)); + common_debug('url = ' . $this->url . ' challenge = ' . $this->challenge); + + return true; + } + + /** + * Handle the request + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + if (empty($this->url)) { + $this->showError('Hey, you have to provide a url parameter.'); + return; + } + + if (!empty($this->challenge)) { + + // must be a GET + + if ($_SERVER['REQUEST_METHOD'] != 'GET') { + $this->showError('This resource requires an HTTP GET.'); + return; + } + + header('Content-Type: text/xml'); + echo $this->challenge; + + } else { + + // must be a POST + + if ($_SERVER['REQUEST_METHOD'] != 'POST') { + $this->showError('This resource requires an HTTP POST.'); + return; + } + + header('Content-Type: text/xml'); + Echo "<notifyResult success='true' msg='Thanks for the update.' />\n"; + } + + $this->ip = $_SERVER['REMOTE_ADDR']; + + common_log(LOG_INFO, 'RSSCloud Logging Aggregator - ' . + $this->ip . ' claims the feed at ' . + $this->url . ' has been updated.'); + } + + /** + * Show an XML error when things go badly + * + * @param string $msg the error message + * + * @return void + */ + + function showError($msg) + { + header('HTTP/1.1 400 Bad Request'); + header('Content-Type: text/xml'); + echo "<?xml version='1.0'?>\n"; + echo "<notifyResult success='false' msg='$msg' />\n"; + } + +}
\ No newline at end of file diff --git a/plugins/RSSCloud/README b/plugins/RSSCloud/README new file mode 100644 index 000000000..1237e3e0e --- /dev/null +++ b/plugins/RSSCloud/README @@ -0,0 +1,54 @@ +This plugin enables RSSCloud (http://rsscloud.org/) publishing and +subscription handling for RSS 2.0 profile feeds (i.e: +http://SITE/PATH/api/statuses/user_timeline/USERNAME.rss). When the +plugin is enabled, StatusNet acts as both the publisher and hub ('writer' and +'cloud' in RSSCloud parlance), but only for local StatusNet feeds. It's +not possible to use it as a general purpose hub -- for instance you can't +subscribe and get updates to a Wordpress feed from StatusNet using this +plugin. + +To use the plugin, add the following to your config.php: + + addPlugin('RSSCloud'); + +Enabling the plugin will add a <cloud> element to your RSS 2.0 profile feeds +that looks like this: + + <cloud domain="SITE" port="80" path="/main/rsscloud/request_notify" + registerProcedure="" protocol="http-post"/> + +Aggregators may subscribe by sending a proper REST RSSCloud subscription +request (the optional 'domain' parameter with challenge is supported). +Subscribing aggregators will be notified ('pinged') when users they have +subscribed to post new notices. Currently, REST is the only protocol +supported for notifications. + +Deamon +------ + +There's also a daemon for offline processing of queued notices with +RSSCloud destinations, which will start automatically if/when you run +scripts/startdaemons.sh. + +Notes +----- + +- Again, only RSS 2.0 profile feeds may be subscribed to, and they have + to be the ones with user names in them, like: + http://SITE/PATH/api/statuses/user_timeline/USERNAME.rss +- Subscriptions are deleted after three notification failures in a row + (not sure this is optimal). +- The plugin includes a dummy LoggingAggregator class that can be used + for end-to-end testing. You probably don't want to mess with it. + +TODO +---- + +- Figure out why the RSSCloudSubcription can't ->delete() or ->update() +- Support pinging via XML-RPC and SOAP +- Automatically delete subscriptions? Point of reference: Dave's hub + implementation auto-deletes them after 25 hours. WordPress never deletes them. +- Support additional feed URL addresses for the same feed (e.g.: by numeric ID, + ?user_id=xxx, etc.) +- Support additional feeds that make sense (e.g: replies)? +- Possibly use "rssCloud" (like Dave) instead of "RSSCloud" everywhere diff --git a/plugins/RSSCloud/RSSCloudNotifier.php b/plugins/RSSCloud/RSSCloudNotifier.php new file mode 100644 index 000000000..d454691c8 --- /dev/null +++ b/plugins/RSSCloud/RSSCloudNotifier.php @@ -0,0 +1,240 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Class to ping an rssCloud endpoint when a feed has been updated + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Class for notifying cloud-enabled RSS aggregators that StatusNet + * feeds have been updated. + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + **/ +class RSSCloudNotifier +{ + const MAX_FAILURES = 3; + + /** + * Send an HTTP GET to the notification handler with a + * challenge string to see if it repsonds correctly. + * + * @param string $endpoint URL of the notification handler + * @param string $feed the feed being subscribed to + * + * @return boolean success + */ + function challenge($endpoint, $feed) + { + $code = common_confirmation_code(128); + $params = array('url' => $feed, 'challenge' => $code); + $url = $endpoint . '?' . http_build_query($params); + + try { + $client = new HTTPClient(); + $response = $client->get($url); + } catch (HTTP_Request2_Exception $e) { + common_log(LOG_INFO, + 'RSSCloud plugin - failure testing notify handler ' . + $endpoint . ' - ' . $e->getMessage()); + return false; + } + + // Check response is betweet 200 and 299 and body contains challenge data + + $status = $response->getStatus(); + $body = $response->getBody(); + + if ($status >= 200 && $status < 300) { + + // NOTE: the spec says that the body must contain the string + // challenge. It doesn't say that the body must contain the + // challenge string ONLY, although that seems to be the way + // the other implementors have interpreted it. + + if (strpos($body, $code) !== false) { + common_log(LOG_INFO, 'RSSCloud plugin - ' . + "success testing notify handler: $endpoint"); + return true; + } else { + common_log(LOG_INFO, 'RSSCloud plugin - ' . + 'challenge/repsonse failed for notify handler ' . + $endpoint); + common_debug('body = ' . var_export($body, true)); + return false; + } + } else { + common_log(LOG_INFO, 'RSSCloud plugin - ' . + "failure testing notify handler: $endpoint " . + ' - got HTTP ' . $status); + common_debug('body = ' . var_export($body, true)); + return false; + } + } + + /** + * HTTP POST a notification that a feed has been updated + * ('ping the cloud'). + * + * @param String $endpoint URL of the notification handler + * @param String $feed the feed being subscribed to + * + * @return boolean success + */ + function postUpdate($endpoint, $feed) + { + + $headers = array(); + $postdata = array('url' => $feed); + + try { + $client = new HTTPClient(); + $response = $client->post($endpoint, $headers, $postdata); + } catch (HTTP_Request2_Exception $e) { + common_log(LOG_INFO, 'RSSCloud plugin - failure notifying ' . + $endpoint . ' that feed ' . $feed . + ' has changed: ' . $e->getMessage()); + return false; + } + + $status = $response->getStatus(); + + if ($status >= 200 && $status < 300) { + common_log(LOG_INFO, 'RSSCloud plugin - success notifying ' . + $endpoint . ' that feed ' . $feed . ' has changed.'); + return true; + } else { + common_log(LOG_INFO, 'RSSCloud plugin - failure notifying ' . + $endpoint . ' that feed ' . $feed . + ' has changed: got HTTP ' . $status); + return false; + } + } + + /** + * Notify all subscribers to a profile feed that it has changed. + * + * @param Profile $profile the profile whose feed has been + * updated + * + * @return boolean success + */ + function notify($profile) + { + $feed = common_path('api/statuses/user_timeline/') . + $profile->nickname . '.rss'; + + $cloudSub = new RSSCloudSubscription(); + + $cloudSub->subscribed = $profile->id; + + if ($cloudSub->find()) { + while ($cloudSub->fetch()) { + $result = $this->postUpdate($cloudSub->url, $feed); + if ($result == false) { + $this->handleFailure($cloudSub); + } + } + } + + return true; + } + + /** + * Handle problems posting cloud notifications. Increment the failure + * count, or delete the subscription if the maximum number of failures + * is exceeded. + * + * XXX: Redo with proper DB_DataObject methods once I figure out what + * what the problem is with pluginized DB_DataObjects. -Z + * + * @param RSSCloudSubscription $cloudSub the subscription in question + * + * @return boolean success + */ + function handleFailure($cloudSub) + { + $failCnt = $cloudSub->failures + 1; + + if ($failCnt == self::MAX_FAILURES) { + + common_log(LOG_INFO, + 'Deleting RSSCloud subcription ' . + '(max failure count reached), profile: ' . + $cloudSub->subscribed . + ' handler: ' . + $cloudSub->url); + + // XXX: WTF! ->delete() doesn't work. Clearly, there are some issues with + // the DB_DataObject, or my understanding of it. Have to drop into SQL. + + // $result = $cloudSub->delete(); + + $qry = 'DELETE from rsscloud_subscription' . + ' WHERE subscribed = ' . $cloudSub->subscribed . + ' AND url = \'' . $cloudSub->url . '\''; + + $result = $cloudSub->query($qry); + + if (!$result) { + common_log_db_error($cloudSub, 'DELETE', __FILE__); + common_log(LOG_ERR, 'Could not delete RSSCloud subscription.'); + } + + } else { + + common_debug('Updating failure count on RSSCloud subscription. ' . + $failCnt); + + $failCnt = $cloudSub->failures + 1; + + // XXX: ->update() not working either, gar! + + $qry = 'UPDATE rsscloud_subscription' . + ' SET failures = ' . $failCnt . + ' WHERE subscribed = ' . $cloudSub->subscribed . + ' AND url = \'' . $cloudSub->url . '\''; + + $result = $cloudSub->query($qry); + + if (!$result) { + common_log_db_error($cloudsub, 'UPDATE', __FILE__); + common_log(LOG_ERR, + 'Could not update failure ' . + 'count on RSSCloud subscription'); + } + } + } + +} + diff --git a/plugins/RSSCloud/RSSCloudPlugin.php b/plugins/RSSCloud/RSSCloudPlugin.php new file mode 100644 index 000000000..2de162628 --- /dev/null +++ b/plugins/RSSCloud/RSSCloudPlugin.php @@ -0,0 +1,295 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Plugin to support RSSCloud + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +define('RSSCLOUDPLUGIN_VERSION', '0.1'); + +/** + * Plugin class for adding RSSCloud capabilities to StatusNet + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + **/ + +class RSSCloudPlugin extends Plugin +{ + /** + * Our friend, the constructor + * + * @return void + */ + function __construct() + { + parent::__construct(); + } + + /** + * Setup the info for the subscription handler. Allow overriding + * to point at another cloud hub (not currently used). + * + * @return void + */ + + function onInitializePlugin() + { + $this->domain = common_config('rsscloud', 'domain'); + $this->port = common_config('rsscloud', 'port'); + $this->path = common_config('rsscloud', 'path'); + $this->funct = common_config('rsscloud', 'function'); + $this->protocol = common_config('rsscloud', 'protocol'); + + // set defaults + + $local_server = parse_url(common_path('main/rsscloud/request_notify')); + + if (empty($this->domain)) { + $this->domain = $local_server['host']; + } + + if (empty($this->port)) { + $this->port = '80'; + } + + if (empty($this->path)) { + $this->path = $local_server['path']; + } + + if (empty($this->funct)) { + $this->funct = ''; + } + + if (empty($this->protocol)) { + $this->protocol = 'http-post'; + } + } + + /** + * Add RSSCloud-related paths to the router table + * + * Hook for RouterInitialized event. + * + * @param Mapper &$m URL parser and mapper + * + * @return boolean hook return + */ + + function onRouterInitialized(&$m) + { + $m->connect('/main/rsscloud/request_notify', + array('action' => 'RSSCloudRequestNotify')); + + // XXX: This is just for end-to-end testing. Uncomment if you need to pretend + // to be a cloud hub for some reason. + //$m->connect('/main/rsscloud/notify', + // array('action' => 'LoggingAggregator')); + + return true; + } + + /** + * Automatically load the actions and libraries used by + * the RSSCloud plugin + * + * @param Class $cls the class + * + * @return boolean hook return + * + */ + + function onAutoload($cls) + { + switch ($cls) + { + case 'RSSCloudSubscription': + include_once INSTALLDIR . '/plugins/RSSCloud/RSSCloudSubscription.php'; + return false; + case 'RSSCloudNotifier': + include_once INSTALLDIR . '/plugins/RSSCloud/RSSCloudNotifier.php'; + return false; + case 'RSSCloudRequestNotifyAction': + case 'LoggingAggregatorAction': + include_once INSTALLDIR . '/plugins/RSSCloud/' . + mb_substr($cls, 0, -6) . '.php'; + return false; + default: + return true; + } + } + + /** + * Add a <cloud> element to the RSS feed (after the rss <channel> + * element is started). + * + * @param Action $action the ApiAction + * + * @return void + */ + + function onStartApiRss($action) + { + if (get_class($action) == 'ApiTimelineUserAction') { + + $attrs = array('domain' => $this->domain, + 'port' => $this->port, + 'path' => $this->path, + 'registerProcedure' => $this->funct, + 'protocol' => $this->protocol); + + // Dipping into XMLWriter to avoid a full end element (</cloud>). + + $action->xw->startElement('cloud'); + foreach ($attrs as $name => $value) { + $action->xw->writeAttribute($name, $value); + } + + $action->xw->endElement(); + } + } + + /** + * Add an RSSCloud queue item for each notice + * + * @param Notice $notice the notice + * @param array &$transports the list of transports (queues) + * + * @return boolean hook return + */ + + function onStartEnqueueNotice($notice, &$transports) + { + array_push($transports, 'rsscloud'); + return true; + } + + /** + * broadcast the message when not using queuehandler + * + * @param Notice &$notice the notice + * @param array $queue destination queue + * + * @return boolean hook return + */ + + function onUnqueueHandleNotice(&$notice, $queue) + { + if (($queue == 'rsscloud') && ($this->_isLocal($notice))) { + + common_debug('broadcasting rssCloud bound notice ' . $notice->id); + + $profile = $notice->getProfile(); + + $notifier = new RSSCloudNotifier(); + $notifier->notify($profile); + + return false; + } + + return true; + } + + /** + * Determine whether the notice was locally created + * + * @param Notice $notice the notice in question + * + * @return boolean locality + */ + + function _isLocal($notice) + { + return ($notice->is_local == Notice::LOCAL_PUBLIC || + $notice->is_local == Notice::LOCAL_NONPUBLIC); + } + + /** + * Create the rsscloud_subscription table if it's not + * already in the DB + * + * @return boolean hook return + */ + + function onCheckSchema() + { + $schema = Schema::get(); + $schema->ensureTable('rsscloud_subscription', + array(new ColumnDef('subscribed', 'integer', + null, false, 'PRI'), + new ColumnDef('url', 'varchar', + '255', false, 'PRI'), + new ColumnDef('failures', 'integer', + null, false, null, 0), + new ColumnDef('created', 'datetime', + null, false), + new ColumnDef('modified', 'timestamp', + null, false, null, + 'CURRENT_TIMESTAMP', + 'on update CURRENT_TIMESTAMP') + )); + return true; + } + + /** + * Add RSSCloudQueueHandler to the list of valid daemons to + * start + * + * @param array $daemons the list of daemons to run + * + * @return boolean hook return + * + */ + + function onGetValidDaemons($daemons) + { + array_push($daemons, INSTALLDIR . + '/plugins/RSSCloud/RSSCloudQueueHandler.php'); + return true; + } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'RSSCloud', + 'version' => RSSCLOUDPLUGIN_VERSION, + 'author' => 'Zach Copley', + 'homepage' => 'http://status.net/wiki/Plugin:RSSCloud', + 'rawdescription' => + _m('The RSSCloud plugin enables your StatusNet instance to publish ' . + 'real-time updates for profile RSS feeds using the ' . + '<a href="http://rsscloud.org/">RSSCloud protocol</a>".')); + + return true; + } + +} + diff --git a/plugins/RSSCloud/RSSCloudQueueHandler.php b/plugins/RSSCloud/RSSCloudQueueHandler.php new file mode 100755 index 000000000..693dd27c1 --- /dev/null +++ b/plugins/RSSCloud/RSSCloudQueueHandler.php @@ -0,0 +1,78 @@ +#!/usr/bin/env php +<?php +/* + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2008, 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +define('INSTALLDIR', realpath(dirname(__FILE__) . '/../..')); + +$shortoptions = 'i::'; +$longoptions = array('id::'); + +$helptext = <<<END_OF_ENJIT_HELP +Daemon script for pushing new notices to RSSCloud subscribers. + + -i --id Identity (default none) + +END_OF_ENJIT_HELP; + +require_once INSTALLDIR . '/scripts/commandline.inc'; +require_once INSTALLDIR . '/lib/queuehandler.php'; +require_once INSTALLDIR . '/plugins/RSSCloud/RSSCloudNotifier.php'; +require_once INSTALLDIR . '/plugins/RSSCloud/RSSCloudSubscription.php'; + +class RSSCloudQueueHandler extends QueueHandler +{ + var $notifier = null; + + function transport() + { + return 'rsscloud'; + } + + function start() + { + $this->log(LOG_INFO, "INITIALIZE"); + $this->notifier = new RSSCloudNotifier(); + return true; + } + + function handle_notice($notice) + { + $profile = $notice->getProfile(); + return $this->notifier->notify($profile); + } + + function finish() + { + } + +} + +if (have_option('i')) { + $id = get_option_value('i'); +} else if (have_option('--id')) { + $id = get_option_value('--id'); +} else if (count($args) > 0) { + $id = $args[0]; +} else { + $id = null; +} + +$handler = new RSSCloudQueueHandler($id); + +$handler->runOnce(); diff --git a/plugins/RSSCloud/RSSCloudRequestNotify.php b/plugins/RSSCloud/RSSCloudRequestNotify.php new file mode 100644 index 000000000..d76c08d37 --- /dev/null +++ b/plugins/RSSCloud/RSSCloudRequestNotify.php @@ -0,0 +1,347 @@ +<?php +/** + * Action to let RSSCloud aggregators request update notification when + * user profile feeds change. + * + * PHP version 5 + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Action class to handle RSSCloud notification (subscription) requests + * + * @category Plugin + * @package StatusNet + * @author Zach Copley <zach@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + **/ + +class RSSCloudRequestNotifyAction extends Action +{ + /** + * Initialization. + * + * @param array $args Web and URL arguments + * + * @return boolean false if user doesn't exist + */ + + function prepare($args) + { + parent::prepare($args); + + $this->ip = $_SERVER['REMOTE_ADDR']; + $this->port = $this->arg('port'); + $this->path = $this->arg('path'); + + if ($this->path[0] != '/') { + $this->path = '/' . $this->path; + } + + $this->protocol = $this->arg('protocol'); + $this->procedure = $this->arg('notifyProcedure'); + $this->domain = $this->arg('domain'); + + $this->feeds = $this->getFeeds(); + + return true; + } + + /** + * Handle the request + * + * Checks for all the required parameters for a subscription, + * validates that the feed being subscribed to is real, and then + * saves the subsctiption. + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + if ($_SERVER['REQUEST_METHOD'] != 'POST') { + $this->showResult(false, 'Request must be POST.'); + return; + } + + $missing = array(); + + if (empty($this->port)) { + $missing[] = 'port'; + } + + if (empty($this->path)) { + $missing[] = 'path'; + } + + if (empty($this->protocol)) { + $missing[] = 'protocol'; + } else if (strtolower($this->protocol) != 'http-post') { + $msg = 'Only http-post notifications are supported at this time.'; + $this->showResult(false, $msg); + return; + } + + if (!isset($this->procedure)) { + $missing[] = 'notifyProcedure'; + } + + if (!empty($missing)) { + $msg = 'The following parameters were missing from the request body: ' . + implode(', ', $missing) . '.'; + $this->showResult(false, $msg); + return; + } + + if (empty($this->feeds)) { + $msg = 'You must provide at least one valid profile feed url ' . + '(url1, url2, url3 ... urlN).'; + $this->showResult(false, $msg); + return; + } + + // We have to validate everything before saving anything. + // We only return one success or failure no matter how + // many feeds the subscriber is trying to subscribe to + + foreach ($this->feeds as $feed) { + + if (!$this->validateFeed($feed)) { + + $nh = $this->getNotifyUrl(); + common_log(LOG_WARNING, + "RSSCloud plugin - $nh tried to subscribe to invalid feed: $feed"); + + $msg = 'Feed subscription failed - Not a valid feed.'; + $this->showResult(false, $msg); + return; + } + + if (!$this->testNotificationHandler($feed)) { + $msg = 'Feed subscription failed - ' . + 'notification handler doesn\'t respond correctly.'; + $this->showResult(false, $msg); + return; + } + + } + + foreach ($this->feeds as $feed) { + $this->saveSubscription($feed); + } + + // XXX: What to do about deleting stale subscriptions? + // 25 hours seems harsh. WordPress doesn't ever remove + // subscriptions. + + $msg = 'Thanks for the subscription. ' . + 'When the feed(s) update(s) we\'ll notify you.'; + + $this->showResult(true, $msg); + } + + /** + * Validate that the requested feed is one we serve + * up via RSSCloud. + * + * @param string $feed the feed in question + * + * @return void + */ + + function validateFeed($feed) + { + $user = $this->userFromFeed($feed); + + if (empty($user)) { + return false; + } + + return true; + } + + /** + * Pull all of the urls (url1, url2, url3...urlN) that + * the subscriber wants to subscribe to. + * + * @return array $feeds the list of feeds + */ + + function getFeeds() + { + $feeds = array(); + + while (list($key, $feed) = each($this->args)) { + if (preg_match('/^url\d*$/', $key)) { + $feeds[] = $feed; + } + } + + return $feeds; + } + + /** + * Test that a notification handler is there and is reponding + * correctly. This is called before adding a subscription. + * + * @param string $feed the feed to verify + * + * @return boolean success result + */ + + function testNotificationHandler($feed) + { + $notifyUrl = $this->getNotifyUrl(); + + $notifier = new RSSCloudNotifier(); + + if (isset($this->domain)) { + + // 'domain' param set, so we have to use GET and send a challenge + + common_log(LOG_INFO, + 'RSSCloud plugin - Testing notification handler with challenge: ' . + $notifyUrl); + return $notifier->challenge($notifyUrl, $feed); + + } else { + common_log(LOG_INFO, 'RSSCloud plugin - Testing notification handler: ' . + $notifyUrl); + + return $notifier->postUpdate($notifyUrl, $feed); + } + } + + /** + * Build the URL for the notification handler based on the + * parameters passed in with the subscription request. + * + * @return string notification handler url + */ + + function getNotifyUrl() + { + if (isset($this->domain)) { + return 'http://' . $this->domain . ':' . $this->port . $this->path; + } else { + return 'http://' . $this->ip . ':' . $this->port . $this->path; + } + } + + /** + * Uses the nickname part of the subscribed feed URL to figure out + * whethere there's really a user with such a feed. Used to + * validate feeds before adding a subscription. + * + * @param string $feed the feed in question + * + * @return boolean success + */ + + function userFromFeed($feed) + { + // We only do profile feeds + + $path = common_path('api/statuses/user_timeline/'); + $valid = '%^' . $path . '(?<nickname>.*)\.rss$%'; + + if (preg_match($valid, $feed, $matches)) { + $user = User::staticGet('nickname', $matches['nickname']); + if (!empty($user)) { + return $user; + } + } + + return false; + } + + /** + * Save an RSSCloud subscription + * + * @param string $feed a valid profile feed + * + * @return boolean success result + */ + + function saveSubscription($feed) + { + $user = $this->userFromFeed($feed); + + $notifyUrl = $this->getNotifyUrl(); + + $sub = RSSCloudSubscription::getSubscription($user->id, $notifyUrl); + + if ($sub) { + common_log(LOG_INFO, "RSSCloud plugin - $notifyUrl refreshed subscription" . + " to user $user->nickname (id: $user->id)."); + } else { + + $sub = new RSSCloudSubscription(); + + $sub->subscribed = $user->id; + $sub->url = $notifyUrl; + $sub->created = common_sql_now(); + + if (!$sub->insert()) { + common_log_db_error($sub, 'INSERT', __FILE__); + return false; + } + + common_log(LOG_INFO, "RSSCloud plugin - $notifyUrl subscribed" . + " to user $user->nickname (id: $user->id)"); + } + + return true; + } + + /** + * Show an XML message indicating the subscription + * was successful or failed. + * + * @param boolean $success whether it was good or bad + * @param string $msg the message to output + * + * @return boolean success result + */ + + function showResult($success, $msg) + { + $this->startXML(); + $this->elementStart('notifyResult', + array('success' => ($success) ? 'true' : 'false', + 'msg' => $msg)); + $this->endXML(); + } + +} + diff --git a/plugins/RSSCloud/RSSCloudSubscription.php b/plugins/RSSCloud/RSSCloudSubscription.php new file mode 100644 index 000000000..396c604e7 --- /dev/null +++ b/plugins/RSSCloud/RSSCloudSubscription.php @@ -0,0 +1,79 @@ +<?php +/* + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2008, 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET') && !defined('LACONICA')) { + exit(1); +} + +/** + * Table Definition for rsscloud_subscription + */ + +require_once INSTALLDIR . '/classes/Memcached_DataObject.php'; + +class RSSCloudSubscription extends Memcached_DataObject { + + var $__table='rsscloud_subscription'; // table name + var $subscribed; // int primary key user id + var $url; // string primary key + var $failures; // int + var $created; // datestamp() + var $modified; // timestamp() not_null default_CURRENT_TIMESTAMP + + function staticGet($k,$v=NULL) { return DB_DataObject::staticGet('DataObjects_Grp',$k,$v); } + + function table() + { + + $db = $this->getDatabaseConnection(); + $dbtype = $db->phptype; + + $cols = array('subscribed' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL, + 'url' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL, + 'failures' => DB_DATAOBJECT_INT, + 'created' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL, + 'modified' => ($dbtype == 'mysql' || $dbtype == 'mysqli') ? + DB_DATAOBJECT_MYSQLTIMESTAMP + DB_DATAOBJECT_NOTNULL : + DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + ); + + return $cols; + } + + function keys() + { + return array('subscribed' => 'N', 'url' => 'N'); + } + + static function getSubscription($subscribed, $url) + { + $sub = new RSSCloudSubscription(); + $sub->whereAdd("subscribed = $subscribed"); + $sub->whereAdd("url = '$url'"); + $sub->limit(1); + + if ($sub->find()) { + $sub->fetch(); + return $sub; + } + + return false; + } + +} diff --git a/plugins/Realtime/RealtimePlugin.php b/plugins/Realtime/RealtimePlugin.php index a810b7165..21e465b53 100644 --- a/plugins/Realtime/RealtimePlugin.php +++ b/plugins/Realtime/RealtimePlugin.php @@ -310,8 +310,7 @@ class RealtimePlugin extends Plugin function _getScripts() { - return array('plugins/Realtime/realtimeupdate.js', - 'plugins/Realtime/json2.js'); + return array('plugins/Realtime/realtimeupdate.js'); } function _updateInitialize($timeline, $user_id) diff --git a/plugins/Realtime/json2.js b/plugins/Realtime/json2.js deleted file mode 100644 index 7e27df518..000000000 --- a/plugins/Realtime/json2.js +++ /dev/null @@ -1,478 +0,0 @@ -/* - http://www.JSON.org/json2.js - 2009-04-16 - - Public Domain. - - NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK. - - See http://www.JSON.org/js.html - - This file creates a global JSON object containing two methods: stringify - and parse. - - JSON.stringify(value, replacer, space) - value any JavaScript value, usually an object or array. - - replacer an optional parameter that determines how object - values are stringified for objects. It can be a - function or an array of strings. - - space an optional parameter that specifies the indentation - of nested structures. If it is omitted, the text will - be packed without extra whitespace. If it is a number, - it will specify the number of spaces to indent at each - level. If it is a string (such as '\t' or ' '), - it contains the characters used to indent at each level. - - This method produces a JSON text from a JavaScript value. - - When an object value is found, if the object contains a toJSON - method, its toJSON method will be called and the result will be - stringified. A toJSON method does not serialize: it returns the - value represented by the name/value pair that should be serialized, - or undefined if nothing should be serialized. The toJSON method - will be passed the key associated with the value, and this will be - bound to the object holding the key. - - For example, this would serialize Dates as ISO strings. - - Date.prototype.toJSON = function (key) { - function f(n) { - // Format integers to have at least two digits. - return n < 10 ? '0' + n : n; - } - - return this.getUTCFullYear() + '-' + - f(this.getUTCMonth() + 1) + '-' + - f(this.getUTCDate()) + 'T' + - f(this.getUTCHours()) + ':' + - f(this.getUTCMinutes()) + ':' + - f(this.getUTCSeconds()) + 'Z'; - }; - - You can provide an optional replacer method. It will be passed the - key and value of each member, with this bound to the containing - object. The value that is returned from your method will be - serialized. If your method returns undefined, then the member will - be excluded from the serialization. - - If the replacer parameter is an array of strings, then it will be - used to select the members to be serialized. It filters the results - such that only members with keys listed in the replacer array are - stringified. - - Values that do not have JSON representations, such as undefined or - functions, will not be serialized. Such values in objects will be - dropped; in arrays they will be replaced with null. You can use - a replacer function to replace those with JSON values. - JSON.stringify(undefined) returns undefined. - - The optional space parameter produces a stringification of the - value that is filled with line breaks and indentation to make it - easier to read. - - If the space parameter is a non-empty string, then that string will - be used for indentation. If the space parameter is a number, then - the indentation will be that many spaces. - - Example: - - text = JSON.stringify(['e', {pluribus: 'unum'}]); - // text is '["e",{"pluribus":"unum"}]' - - - text = JSON.stringify(['e', {pluribus: 'unum'}], null, '\t'); - // text is '[\n\t"e",\n\t{\n\t\t"pluribus": "unum"\n\t}\n]' - - text = JSON.stringify([new Date()], function (key, value) { - return this[key] instanceof Date ? - 'Date(' + this[key] + ')' : value; - }); - // text is '["Date(---current time---)"]' - - - JSON.parse(text, reviver) - This method parses a JSON text to produce an object or array. - It can throw a SyntaxError exception. - - The optional reviver parameter is a function that can filter and - transform the results. It receives each of the keys and values, - and its return value is used instead of the original value. - If it returns what it received, then the structure is not modified. - If it returns undefined then the member is deleted. - - Example: - - // Parse the text. Values that look like ISO date strings will - // be converted to Date objects. - - myData = JSON.parse(text, function (key, value) { - var a; - if (typeof value === 'string') { - a = -/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value); - if (a) { - return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4], - +a[5], +a[6])); - } - } - return value; - }); - - myData = JSON.parse('["Date(09/09/2001)"]', function (key, value) { - var d; - if (typeof value === 'string' && - value.slice(0, 5) === 'Date(' && - value.slice(-1) === ')') { - d = new Date(value.slice(5, -1)); - if (d) { - return d; - } - } - return value; - }); - - - This is a reference implementation. You are free to copy, modify, or - redistribute. - - This code should be minified before deployment. - See http://javascript.crockford.com/jsmin.html - - USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO - NOT CONTROL. -*/ - -/*jslint evil: true */ - -/*global JSON */ - -/*members "", "\b", "\t", "\n", "\f", "\r", "\"", JSON, "\\", apply, - call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours, - getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join, - lastIndex, length, parse, prototype, push, replace, slice, stringify, - test, toJSON, toString, valueOf -*/ - -// Create a JSON object only if one does not already exist. We create the -// methods in a closure to avoid creating global variables. - -if (!this.JSON) { - JSON = {}; -} -(function () { - - function f(n) { - // Format integers to have at least two digits. - return n < 10 ? '0' + n : n; - } - - if (typeof Date.prototype.toJSON !== 'function') { - - Date.prototype.toJSON = function (key) { - - return this.getUTCFullYear() + '-' + - f(this.getUTCMonth() + 1) + '-' + - f(this.getUTCDate()) + 'T' + - f(this.getUTCHours()) + ':' + - f(this.getUTCMinutes()) + ':' + - f(this.getUTCSeconds()) + 'Z'; - }; - - String.prototype.toJSON = - Number.prototype.toJSON = - Boolean.prototype.toJSON = function (key) { - return this.valueOf(); - }; - } - - var cx = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, - escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, - gap, - indent, - meta = { // table of character substitutions - '\b': '\\b', - '\t': '\\t', - '\n': '\\n', - '\f': '\\f', - '\r': '\\r', - '"' : '\\"', - '\\': '\\\\' - }, - rep; - - - function quote(string) { - -// If the string contains no control characters, no quote characters, and no -// backslash characters, then we can safely slap some quotes around it. -// Otherwise we must also replace the offending characters with safe escape -// sequences. - - escapable.lastIndex = 0; - return escapable.test(string) ? - '"' + string.replace(escapable, function (a) { - var c = meta[a]; - return typeof c === 'string' ? c : - '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4); - }) + '"' : - '"' + string + '"'; - } - - - function str(key, holder) { - -// Produce a string from holder[key]. - - var i, // The loop counter. - k, // The member key. - v, // The member value. - length, - mind = gap, - partial, - value = holder[key]; - -// If the value has a toJSON method, call it to obtain a replacement value. - - if (value && typeof value === 'object' && - typeof value.toJSON === 'function') { - value = value.toJSON(key); - } - -// If we were called with a replacer function, then call the replacer to -// obtain a replacement value. - - if (typeof rep === 'function') { - value = rep.call(holder, key, value); - } - -// What happens next depends on the value's type. - - switch (typeof value) { - case 'string': - return quote(value); - - case 'number': - -// JSON numbers must be finite. Encode non-finite numbers as null. - - return isFinite(value) ? String(value) : 'null'; - - case 'boolean': - case 'null': - -// If the value is a boolean or null, convert it to a string. Note: -// typeof null does not produce 'null'. The case is included here in -// the remote chance that this gets fixed someday. - - return String(value); - -// If the type is 'object', we might be dealing with an object or an array or -// null. - - case 'object': - -// Due to a specification blunder in ECMAScript, typeof null is 'object', -// so watch out for that case. - - if (!value) { - return 'null'; - } - -// Make an array to hold the partial results of stringifying this object value. - - gap += indent; - partial = []; - -// Is the value an array? - - if (Object.prototype.toString.apply(value) === '[object Array]') { - -// The value is an array. Stringify every element. Use null as a placeholder -// for non-JSON values. - - length = value.length; - for (i = 0; i < length; i += 1) { - partial[i] = str(i, value) || 'null'; - } - -// Join all of the elements together, separated with commas, and wrap them in -// brackets. - - v = partial.length === 0 ? '[]' : - gap ? '[\n' + gap + - partial.join(',\n' + gap) + '\n' + - mind + ']' : - '[' + partial.join(',') + ']'; - gap = mind; - return v; - } - -// If the replacer is an array, use it to select the members to be stringified. - - if (rep && typeof rep === 'object') { - length = rep.length; - for (i = 0; i < length; i += 1) { - k = rep[i]; - if (typeof k === 'string') { - v = str(k, value); - if (v) { - partial.push(quote(k) + (gap ? ': ' : ':') + v); - } - } - } - } else { - -// Otherwise, iterate through all of the keys in the object. - - for (k in value) { - if (Object.hasOwnProperty.call(value, k)) { - v = str(k, value); - if (v) { - partial.push(quote(k) + (gap ? ': ' : ':') + v); - } - } - } - } - -// Join all of the member texts together, separated with commas, -// and wrap them in braces. - - v = partial.length === 0 ? '{}' : - gap ? '{\n' + gap + partial.join(',\n' + gap) + '\n' + - mind + '}' : '{' + partial.join(',') + '}'; - gap = mind; - return v; - } - } - -// If the JSON object does not yet have a stringify method, give it one. - - if (typeof JSON.stringify !== 'function') { - JSON.stringify = function (value, replacer, space) { - -// The stringify method takes a value and an optional replacer, and an optional -// space parameter, and returns a JSON text. The replacer can be a function -// that can replace values, or an array of strings that will select the keys. -// A default replacer method can be provided. Use of the space parameter can -// produce text that is more easily readable. - - var i; - gap = ''; - indent = ''; - -// If the space parameter is a number, make an indent string containing that -// many spaces. - - if (typeof space === 'number') { - for (i = 0; i < space; i += 1) { - indent += ' '; - } - -// If the space parameter is a string, it will be used as the indent string. - - } else if (typeof space === 'string') { - indent = space; - } - -// If there is a replacer, it must be a function or an array. -// Otherwise, throw an error. - - rep = replacer; - if (replacer && typeof replacer !== 'function' && - (typeof replacer !== 'object' || - typeof replacer.length !== 'number')) { - throw new Error('JSON.stringify'); - } - -// Make a fake root object containing our value under the key of ''. -// Return the result of stringifying the value. - - return str('', {'': value}); - }; - } - - -// If the JSON object does not yet have a parse method, give it one. - - if (typeof JSON.parse !== 'function') { - JSON.parse = function (text, reviver) { - -// The parse method takes a text and an optional reviver function, and returns -// a JavaScript value if the text is a valid JSON text. - - var j; - - function walk(holder, key) { - -// The walk method is used to recursively walk the resulting structure so -// that modifications can be made. - - var k, v, value = holder[key]; - if (value && typeof value === 'object') { - for (k in value) { - if (Object.hasOwnProperty.call(value, k)) { - v = walk(value, k); - if (v !== undefined) { - value[k] = v; - } else { - delete value[k]; - } - } - } - } - return reviver.call(holder, key, value); - } - - -// Parsing happens in four stages. In the first stage, we replace certain -// Unicode characters with escape sequences. JavaScript handles many characters -// incorrectly, either silently deleting them, or treating them as line endings. - - cx.lastIndex = 0; - if (cx.test(text)) { - text = text.replace(cx, function (a) { - return '\\u' + - ('0000' + a.charCodeAt(0).toString(16)).slice(-4); - }); - } - -// In the second stage, we run the text against regular expressions that look -// for non-JSON patterns. We are especially concerned with '()' and 'new' -// because they can cause invocation, and '=' because it can cause mutation. -// But just to be safe, we want to reject all unexpected forms. - -// We split the second stage into 4 regexp operations in order to work around -// crippling inefficiencies in IE's and Safari's regexp engines. First we -// replace the JSON backslash pairs with '@' (a non-JSON character). Second, we -// replace all simple value tokens with ']' characters. Third, we delete all -// open brackets that follow a colon or comma or that begin the text. Finally, -// we look to see that the remaining characters are only whitespace or ']' or -// ',' or ':' or '{' or '}'. If that is so, then the text is safe for eval. - - if (/^[\],:{}\s]*$/. -test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@'). -replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']'). -replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) { - -// In the third stage we use the eval function to compile the text into a -// JavaScript structure. The '{' operator is subject to a syntactic ambiguity -// in JavaScript: it can begin a block or an object literal. We wrap the text -// in parens to eliminate the ambiguity. - - j = eval('(' + text + ')'); - -// In the optional fourth stage, we recursively walk the new structure, passing -// each name/value pair to a reviver function for possible transformation. - - return typeof reviver === 'function' ? - walk({'': j}, '') : j; - } - -// If the text is not JSON parseable, then a SyntaxError is thrown. - - throw new SyntaxError('JSON.parse'); - }; - } -}()); diff --git a/plugins/Recaptcha/RecaptchaPlugin.php b/plugins/Recaptcha/RecaptchaPlugin.php index db118dbb8..3665214f8 100644 --- a/plugins/Recaptcha/RecaptchaPlugin.php +++ b/plugins/Recaptcha/RecaptchaPlugin.php @@ -62,9 +62,8 @@ class RecaptchaPlugin extends Plugin function onEndRegistrationFormData($action) { - $action->style('#recaptcha_area{float:left;}'); $action->elementStart('li'); - $action->raw('<label for="recaptcha_area">Captcha</label>'); + $action->raw('<label for="recaptcha">Captcha</label>'); if($this->checkssl() === true) { $action->raw(recaptcha_get_html($this->public_key), null, true); } else { diff --git a/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php b/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php index d48283b2e..d157ea067 100644 --- a/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php +++ b/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php @@ -31,8 +31,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } -require_once INSTALLDIR.'/plugins/Authentication/AuthenticationPlugin.php'; - class ReverseUsernameAuthenticationPlugin extends AuthenticationPlugin { //---interface implementation---// diff --git a/plugins/Sample/SamplePlugin.php b/plugins/Sample/SamplePlugin.php index 6e361aafb..913741226 100644 --- a/plugins/Sample/SamplePlugin.php +++ b/plugins/Sample/SamplePlugin.php @@ -1,8 +1,12 @@ <?php -/* +/** * StatusNet - the distributed open-source microblogging tool * Copyright (C) 2009, StatusNet, Inc. * + * A sample module to show best practices for StatusNet plugins + * + * PHP version 5 + * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or @@ -15,44 +19,262 @@ * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Sample + * @package StatusNet + * @author Brion Vibber <brionv@status.net> + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ */ -/** - * @package SamplePlugin - * @maintainer Your Name <you@example.com> - */ - -if (!defined('STATUSNET') && !defined('LACONICA')) { +if (!defined('STATUSNET')) { // This check helps protect against security problems; // your code file can't be executed directly from the web. exit(1); } +/** + * Sample plugin main class + * + * Each plugin requires a main class to interact with the StatusNet system. + * + * The main class usually extends the Plugin class that comes with StatusNet. + * + * The class has standard-named methods that will be called when certain events + * happen in the code base. These methods have names like 'onX' where X is an + * event name (see EVENTS.txt for the list of available events). Event handlers + * have pre-defined arguments, based on which event they're handling. A typical + * event handler: + * + * function onSomeEvent($paramA, &$paramB) + * { + * if ($paramA == 'jed') { + * throw new Exception(sprintf(_m("Invalid parameter %s"), $paramA)); + * } + * $paramB = 'spock'; + * return true; + * } + * + * Event handlers must return a boolean value. If they return false, all other + * event handlers for this event (in other plugins) will be skipped, and in some + * cases the default processing for that event would be skipped. This is great for + * replacing the default action of an event. + * + * If the handler returns true, processing of other event handlers and the default + * processing will continue. This is great for extending existing functionality. + * + * If the handler throws an exception, processing will stop, and the exception's + * error will be shown to the user. + * + * To install a plugin (like this one), site admins add the following code to + * their config.php file: + * + * addPlugin('Sample'); + * + * Plugins must be installed in one of the following directories: + * + * local/plugins/{$pluginclass}.php + * local/plugins/{$name}/{$pluginclass}.php + * local/{$pluginclass}.php + * local/{$name}/{$pluginclass}.php + * plugins/{$pluginclass}.php + * plugins/{$name}/{$pluginclass}.php + * + * Here, {$name} is the name of the plugin, like 'Sample', and {$pluginclass} is + * the name of the main class, like 'SamplePlugin'. Plugins that are part of the + * main StatusNet distribution go in 'plugins' and third-party or local ones go + * in 'local'. + * + * Simple plugins can be implemented as a single module. Others are more complex + * and require additional modules; these should use their own directory, like + * 'local/plugins/{$name}/'. All files related to the plugin, including images, + * JavaScript, CSS, external libraries or PHP modules should go in the plugin + * directory. + * + * @category Sample + * @package StatusNet + * @author Brion Vibber <brionv@status.net> + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class SamplePlugin extends Plugin { - function onInitializePlugin() + /** + * Plugins are configured using public instance attributes. To set + * their values, site administrators use this syntax: + * + * addPlugin('Sample', array('attr1' => 'foo', 'attr2' => 'bar')); + * + * The same plugin class can be initialized multiple times with different + * arguments: + * + * addPlugin('EmailNotify', array('sendTo' => 'evan@status.net')); + * addPlugin('EmailNotify', array('sendTo' => 'brionv@status.net')); + * + */ + + public $attr1 = null; + public $attr2 = null; + + /** + * Initializer for this plugin + * + * Plugins overload this method to do any initialization they need, + * like connecting to remote servers or creating paths or so on. + * + * @return boolean hook value; true means continue processing, false means stop. + */ + + function initialize() + { + return true; + } + + /** + * Cleanup for this plugin + * + * Plugins overload this method to do any cleanup they need, + * like disconnecting from remote servers or deleting temp files or so on. + * + * @return boolean hook value; true means continue processing, false means stop. + */ + + function cleanup() { - // Event handlers normally return true to indicate that all is well. - // - // Returning false will cancel further processing of any other - // plugins or core code hooking the same event. return true; } /** - * Hook for RouterInitialized event. + * Database schema setup + * + * Plugins can add their own tables to the StatusNet database. Plugins + * should use StatusNet's schema interface to add or delete tables. The + * ensureTable() method provides an easy way to ensure a table's structure + * and availability. + * + * By default, the schema is checked every time StatusNet is run (say, when + * a Web page is hit). Admins can configure their systems to only check the + * schema when the checkschema.php script is run, greatly improving performance. + * However, they need to remember to run that script after installing or + * upgrading a plugin! + * + * @see Schema + * @see ColumnDef + * + * @return boolean hook value; true means continue processing, false means stop. + */ + + function onCheckSchema() + { + $schema = Schema::get(); + + // For storing user-submitted flags on profiles + + $schema->ensureTable('user_greeting_count', + array(new ColumnDef('user_id', 'integer', null, + true, 'PRI'), + new ColumnDef('greeting_count', 'integer'))); + + return true; + } + + /** + * Load related modules when needed + * + * Most non-trivial plugins will require extra modules to do their work. Typically + * these include data classes, action classes, widget classes, or external libraries. + * + * This method receives a class name and loads the PHP file related to that class. By + * tradition, action classes typically have files named for the action, all lower-case. + * Data classes are in files with the data class name, initial letter capitalized. + * + * Note that this method will be called for *all* overloaded classes, not just ones + * in this plugin! So, make sure to return true by default to let other plugins, and + * the core code, get a chance. + * + * @param string $cls Name of the class to be loaded + * + * @return boolean hook value; true means continue processing, false means stop. + */ + + function onAutoload($cls) + { + $dir = dirname(__FILE__); + + switch ($cls) + { + case 'HelloAction': + include_once $dir . '/' . strtolower(mb_substr($cls, 0, -6)) . '.php'; + return false; + case 'User_greeting_count': + include_once $dir . '/'.$cls.'.php'; + return false; + default: + return true; + } + } + + /** + * Map URLs to actions + * + * This event handler lets the plugin map URLs on the site to actions (and + * thus an action handler class). Note that the action handler class for an + * action will be named 'FoobarAction', where action = 'foobar'. The class + * must be loaded in the onAutoload() method. * * @param Net_URL_Mapper $m path-to-action mapper - * @return boolean hook return + * + * @return boolean hook value; true means continue processing, false means stop. */ function onRouterInitialized($m) { - $m->connect(':nickname/samples', - array('action' => 'showsamples'), - array('feed' => '[A-Za-z0-9_-]+')); - $m->connect('settings/sample', - array('action' => 'samplesettings')); + $m->connect('main/hello', + array('action' => 'hello')); + return true; + } + + /** + * Modify the default menu to link to our custom action + * + * Using event handlers, it's possible to modify the default UI for pages + * almost without limit. In this method, we add a menu item to the default + * primary menu for the interface to link to our action. + * + * The Action class provides a rich set of events to hook, as well as output + * methods. + * + * @param Action $action The current action handler. Use this to + * do any output. + * + * @return boolean hook value; true means continue processing, false means stop. + * + * @see Action + */ + + function onEndPrimaryNav($action) + { + // common_local_url() gets the correct URL for the action name + // we provide + + $action->menuItem(common_local_url('hello'), + _m('Hello'), _m('A warm greeting'), false, 'nav_hello'); + return true; + } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Sample', + 'version' => STATUSNET_VERSION, + 'author' => 'Brion Vibber, Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:Sample', + 'rawdescription' => + _m('A sample plugin to show basics of development for new hackers.')); return true; } } diff --git a/plugins/Sample/User_greeting_count.php b/plugins/Sample/User_greeting_count.php new file mode 100644 index 000000000..d9a59770d --- /dev/null +++ b/plugins/Sample/User_greeting_count.php @@ -0,0 +1,183 @@ +<?php +/** + * Data class for counting greetings + * + * PHP version 5 + * + * @category Data + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR . '/classes/Memcached_DataObject.php'; + +/** + * Data class for counting greetings + * + * We use the DB_DataObject framework for data classes in StatusNet. Each + * table maps to a particular data class, making it easier to manipulate + * data. + * + * Data classes should extend Memcached_DataObject, the (slightly misnamed) + * extension of DB_DataObject that provides caching, internationalization, + * and other bits of good functionality to StatusNet-specific data classes. + * + * @category Action + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * + * @see DB_DataObject + */ + +class User_greeting_count extends Memcached_DataObject +{ + public $__table = 'user_greeting_count'; // table name + public $user_id; // int(4) primary_key not_null + public $greeting_count; // int(4) + + /** + * Get an instance by key + * + * This is a utility method to get a single instance with a given key value. + * + * @param string $k Key to use to lookup (usually 'user_id' for this class) + * @param mixed $v Value to lookup + * + * @return User_greeting_count object found, or null for no hits + * + */ + + function staticGet($k, $v=null) + { + return Memcached_DataObject::staticGet('User_greeting_count', $k, $v); + } + + /** + * return table definition for DB_DataObject + * + * DB_DataObject needs to know something about the table to manipulate + * instances. This method provides all the DB_DataObject needs to know. + * + * @return array array of column definitions + */ + + function table() + { + return array('user_id' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL, + 'greeting_count' => DB_DATAOBJECT_INT); + } + + /** + * return key definitions for DB_DataObject + * + * DB_DataObject needs to know about keys that the table has; this function + * defines them. + * + * @return array key definitions + */ + + function keys() + { + return array('user_id' => 'K'); + } + + /** + * return key definitions for Memcached_DataObject + * + * Our caching system uses the same key definitions, but uses a different + * method to get them. + * + * @return array key definitions + */ + + function keyTypes() + { + return $this->keys(); + } + + /** + * Magic formula for non-autoincrementing integer primary keys + * + * If a table has a single integer column as its primary key, DB_DataObject + * assumes that the column is auto-incrementing and makes a sequence table + * to do this incrementation. Since we don't need this for our class, we + * overload this method and return the magic formula that DB_DataObject needs. + * + * @return array magic three-false array that stops auto-incrementing. + */ + + function sequenceKey() + { + return array(false, false, false); + } + + /** + * Increment a user's greeting count and return instance + * + * This method handles the ins and outs of creating a new greeting_count for a + * user or fetching the existing greeting count and incrementing its value. + * + * @param integer $user_id ID of the user to get a count for + * + * @return User_greeting_count instance for this user, with count already incremented. + */ + + static function inc($user_id) + { + $gc = User_greeting_count::staticGet('user_id', $user_id); + + if (empty($gc)) { + + $gc = new User_greeting_count(); + + $gc->user_id = $user_id; + $gc->greeting_count = 1; + + $result = $gc->insert(); + + if (!$result) { + throw Exception(sprintf(_m("Could not save new greeting count for %d"), + $user_id)); + } + + } else { + + $orig = clone($gc); + + $gc->greeting_count++; + + $result = $gc->update($orig); + + if (!$result) { + throw Exception(sprintf(_m("Could not increment greeting count for %d"), + $user_id)); + } + } + + return $gc; + } +} diff --git a/plugins/Sample/hello.php b/plugins/Sample/hello.php new file mode 100644 index 000000000..0cfd8a1c3 --- /dev/null +++ b/plugins/Sample/hello.php @@ -0,0 +1,166 @@ +<?php +/** + * Give a warm greeting to our friendly user + * + * PHP version 5 + * + * @category Sample + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Give a warm greeting to our friendly user + * + * This sample action shows some basic ways of doing output in an action + * class. + * + * Action classes have several output methods that they override from + * the parent class. + * + * @category Sample + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + */ + +class HelloAction extends Action +{ + var $user = null; + var $gc = null; + + /** + * Take arguments for running + * + * This method is called first, and it lets the action class get + * all its arguments and validate them. It's also the time + * to fetch any relevant data from the database. + * + * Action classes should run parent::prepare($args) as the first + * line of this method to make sure the default argument-processing + * happens. + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + */ + + function prepare($args) + { + parent::prepare($args); + + $this->user = common_current_user(); + + if (!empty($this->user)) { + $this->gc = User_greeting_count::inc($this->user->id); + } + + return true; + } + + /** + * Handle request + * + * This is the main method for handling a request. Note that + * most preparation should be done in the prepare() method; + * by the time handle() is called the action should be + * more or less ready to go. + * + * @param array $args $_REQUEST args; handled in prepare() + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + $this->showPage(); + } + + /** + * Title of this page + * + * Override this method to show a custom title. + * + * @return string Title of the page + */ + + function title() + { + if (empty($this->user)) { + return _m('Hello'); + } else { + return sprintf(_m('Hello, %s'), $this->user->nickname); + } + } + + /** + * show content in the content area + * + * The default StatusNet page has a lot of decorations: menus, + * logos, tabs, all that jazz. This method is used to show + * content in the content area of the page; it's the main + * thing you want to overload. + * + * @return void + */ + + function showContent() + { + if (empty($this->user)) { + $this->element('p', array('class' => 'greeting'), + _m('Hello, stranger!')); + } else { + $this->element('p', array('class' => 'greeting'), + sprintf(_m('Hello, %s'), $this->user->nickname)); + $this->element('p', array('class' => 'greeting_count'), + sprintf(_m('I have greeted you %d time(s).'), + $this->gc->greeting_count)); + } + } + + /** + * Return true if read only. + * + * Some actions only read from the database; others read and write. + * The simple database load-balancer built into StatusNet will + * direct read-only actions to database mirrors (if they are configured), + * and read-write actions to the master database. + * + * This defaults to false to avoid data integrity issues, but you + * should make sure to overload it for performance gains. + * + * @param array $args other arguments, if RO/RW status depends on them. + * + * @return boolean is read only action? + */ + + function isReadOnly($args) + { + return false; + } +} diff --git a/plugins/SimpleUrl/SimpleUrlPlugin.php b/plugins/SimpleUrl/SimpleUrlPlugin.php index 45b745b07..6eac7dbb1 100644 --- a/plugins/SimpleUrl/SimpleUrlPlugin.php +++ b/plugins/SimpleUrl/SimpleUrlPlugin.php @@ -47,5 +47,18 @@ class SimpleUrlPlugin extends UrlShortenerPlugin protected function shorten($url) { return $this->http_get(sprintf($this->serviceUrl,urlencode($url))); } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => sprintf('SimpleUrl (%s)', $this->shortenerName), + 'version' => STATUSNET_VERSION, + 'author' => 'Craig Andrews', + 'homepage' => 'http://status.net/wiki/Plugin:SimpleUrl', + 'rawdescription' => + sprintf(_m('Uses <a href="http://%1$s/">%1$s</a> URL-shortener service.'), + $this->shortenerName)); + + return true; + } } diff --git a/plugins/TemplatePlugin.php b/plugins/TemplatePlugin.php index 18aa8034c..80625c5b7 100644 --- a/plugins/TemplatePlugin.php +++ b/plugins/TemplatePlugin.php @@ -22,13 +22,13 @@ if (!defined('STATUSNET')) { define('TEMPLATEPLUGIN_VERSION', '0.1'); class TemplatePlugin extends Plugin { - + var $blocks = array(); - + function __construct() { parent::__construct(); } - + // capture the RouterInitialized event // and connect a new API method // for updating the template @@ -37,8 +37,7 @@ class TemplatePlugin extends Plugin { 'action' => 'template', )); } - - + // <%styles%> // <%scripts%> // <%search%> @@ -50,18 +49,18 @@ class TemplatePlugin extends Plugin { $act->extraHead(); $this->blocks['head'] = $act->xw->flush(); $act->showStylesheets(); - $this->blocks['styles'] = $act->xw->flush(); + $this->blocks['styles'] = $act->xw->flush(); $act->showScripts(); - $this->blocks['scripts'] = $act->xw->flush(); + $this->blocks['scripts'] = $act->xw->flush(); $act->showFeeds(); - $this->blocks['feeds'] = $act->xw->flush(); + $this->blocks['feeds'] = $act->xw->flush(); $act->showOpenSearch(); - $this->blocks['search'] = $act->xw->flush(); + $this->blocks['search'] = $act->xw->flush(); $act->showDescription(); $this->blocks['description'] = $act->xw->flush(); return false; } - + // <%bodytext%> function onStartShowContentBlock( &$act ) { $this->clear_xmlWriter($act); @@ -70,7 +69,7 @@ class TemplatePlugin extends Plugin { function onEndShowContentBlock( &$act ) { $this->blocks['bodytext'] = $act->xw->flush(); } - + // <%localnav%> function onStartShowLocalNavBlock( &$act ) { $this->clear_xmlWriter($act); @@ -79,7 +78,7 @@ class TemplatePlugin extends Plugin { function onEndShowLocalNavBlock( &$act ) { $this->blocks['localnav'] = $act->xw->flush(); } - + // <%export%> function onStartShowExportData( &$act ) { $this->clear_xmlWriter($act); @@ -88,7 +87,7 @@ class TemplatePlugin extends Plugin { function onEndShowExportData( &$act ) { $this->blocks['export'] = $act->xw->flush(); } - + // <%subscriptions%> // <%subscribers%> // <%groups%> @@ -149,7 +148,7 @@ class TemplatePlugin extends Plugin { } return false; } - + // <%logo%> // <%nav%> // <%notice%> @@ -170,7 +169,7 @@ class TemplatePlugin extends Plugin { $this->blocks['noticeform'] = $act->xw->flush(); return false; } - + // <%secondarynav%> // <%licenses%> function onStartShowFooter( &$act ) { @@ -181,19 +180,19 @@ class TemplatePlugin extends Plugin { $this->blocks['licenses'] = $act->xw->flush(); return false; } - + // capture the EndHTML event // and include the template function onEndEndHTML($act) { - + global $action, $tags; - + // set the action and title values $vars = array( 'action'=>$action, 'title'=>$act->title(). " - ". common_config('site', 'name') ); - + // use the PHP template // unless statusnet config: // $config['template']['mode'] = 'html'; @@ -203,55 +202,55 @@ class TemplatePlugin extends Plugin { include $tpl_file; return; } - + $tpl_file = $this->templateFolder() . '/index.html'; - + // read the static template $output = file_get_contents( $tpl_file ); - + $tags = array(); - + // get a list of the <%tags%> in the template $pattern='/<%([a-z]+)%>/'; - + if ( 1 <= preg_match_all( $pattern, $output, $found )) $tags[] = $found; - + // for each found tag, set its value from the rendered blocks foreach( $tags[0][1] as $pos=>$tag ) { if (isset($this->blocks[$tag])) $vars[$tag] = $this->blocks[$tag]; - + // didn't find a block for the tag elseif (!isset($vars[$tag])) $vars[$tag] = ''; } - + // replace the tags in the template foreach( $vars as $key=>$val ) $output = str_replace( '<%'.$key.'%>', $val, $output ); - + echo $output; - + return true; - + } function templateFolder() { return 'tpl'; } - + // catching the StartShowHTML event to halt the rendering function onStartShowHTML( &$act ) { $this->clear_xmlWriter($act); return true; } - + // clear the xmlWriter function clear_xmlWriter( &$act ) { $act->xw->openMemory(); $act->xw->setIndent(true); } - + } /** @@ -267,7 +266,7 @@ class TemplatePlugin extends Plugin { * @link http://megapump.com/ * */ - + class TemplateAction extends Action { @@ -275,54 +274,65 @@ class TemplateAction extends Action parent::prepare($args); return true; } - + function handle($args) { - + parent::handle($args); - + if (!isset($_SERVER['PHP_AUTH_USER'])) { - + // not authenticated, show login form header('WWW-Authenticate: Basic realm="StatusNet API"'); - + // cancelled the browser login form $this->clientError(_('Authentication error!'), $code = 401); - + } else { - + $nick = $_SERVER['PHP_AUTH_USER']; $pass = $_SERVER['PHP_AUTH_PW']; - + // check username and password $user = common_check_user($nick,$pass); - + if ($user) { - + // verify that user is admin if (!($user->id == 1)) $this->clientError(_('Only User #1 can update the template.'), $code = 401); - + // open the old template $tpl_file = $this->templateFolder() . '/index.html'; $fp = fopen( $tpl_file, 'w+' ); - + // overwrite with the new template fwrite($fp, $this->arg('template')); fclose($fp); - + header('HTTP/1.1 200 OK'); header('Content-type: text/plain'); print "Template Updated!"; - + } else { - + // bad username and password $this->clientError(_('Authentication error!'), $code = 401); - + } - + } } + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Template', + 'version' => TEMPLATEPLUGIN_VERSION, + 'author' => 'Brian Hendrickson', + 'homepage' => 'http://status.net/wiki/Plugin:Template', + 'rawdescription' => + _m('Use an HTML template for Web output.')); + return true; + } + } /** diff --git a/plugins/TightUrl/TightUrlPlugin.php b/plugins/TightUrl/TightUrlPlugin.php index 6ced9afdc..e2d494a7b 100644 --- a/plugins/TightUrl/TightUrlPlugin.php +++ b/plugins/TightUrl/TightUrlPlugin.php @@ -57,4 +57,16 @@ class TightUrlPlugin extends UrlShortenerPlugin return strval($xml['href']); } } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => sprintf('TightUrl (%s)', $this->shortenerName), + 'version' => STATUSNET_VERSION, + 'author' => 'Craig Andrews', + 'homepage' => 'http://status.net/wiki/Plugin:TightUrl', + 'rawdescription' => + sprintf(_m('Uses <a href="http://%1$s/">%1$s</a> URL-shortener service.'), + $this->shortenerName)); + return true; + } } diff --git a/plugins/TwitterBridge/TwitterBridgePlugin.php b/plugins/TwitterBridge/TwitterBridgePlugin.php index de1181903..a87ee2894 100644 --- a/plugins/TwitterBridge/TwitterBridgePlugin.php +++ b/plugins/TwitterBridge/TwitterBridgePlugin.php @@ -31,6 +31,8 @@ if (!defined('STATUSNET')) { require_once INSTALLDIR . '/plugins/TwitterBridge/twitter.php'; +define('TWITTERBRIDGEPLUGIN_VERSION', '0.9'); + /** * Plugin for sending and importing Twitter statuses * @@ -189,4 +191,17 @@ class TwitterBridgePlugin extends Plugin return true; } + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'TwitterBridge', + 'version' => TWITTERBRIDGEPLUGIN_VERSION, + 'author' => 'Zach Copley', + 'homepage' => 'http://status.net/wiki/Plugin:TwitterBridge', + 'rawdescription' => + _m('The Twitter "bridge" plugin allows you to integrate ' . + 'your StatusNet instance with ' . + '<a href="http://twitter.com/">Twitter</a>.')); + return true; + } + } diff --git a/plugins/UserFlag/UserFlagPlugin.php b/plugins/UserFlag/UserFlagPlugin.php index 75dcca4fc..a33869c19 100644 --- a/plugins/UserFlag/UserFlagPlugin.php +++ b/plugins/UserFlag/UserFlagPlugin.php @@ -27,7 +27,7 @@ * @link http://status.net/ */ -if (!defined('STATUSNET') && !defined('LACONICA')) { +if (!defined('STATUSNET')) { exit(1); } @@ -43,6 +43,20 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { class UserFlagPlugin extends Plugin { + const REVIEWFLAGS = 'UserFlagPlugin::reviewflags'; + const CLEARFLAGS = 'UserFlagPlugin::clearflags'; + + public $flagOnBlock = true; + + /** + * Hook for ensuring our tables are created + * + * Ensures that the user_flag_profile table exists + * and has the right columns. + * + * @return boolean hook return + */ + function onCheckSchema() { $schema = Schema::get(); @@ -62,37 +76,61 @@ class UserFlagPlugin extends Plugin return true; } - function onInitializePlugin() - { - // XXX: do something here? - return true; - } + /** + * Add our actions to the URL router + * + * @param Net_URL_Mapper $m URL mapper for this hit + * + * @return boolean hook return + */ - function onRouterInitialized($m) { + function onRouterInitialized($m) + { $m->connect('main/flag/profile', array('action' => 'flagprofile')); + $m->connect('main/flag/clear', array('action' => 'clearflag')); $m->connect('admin/profile/flag', array('action' => 'adminprofileflag')); return true; } - function onAutoload($cls) + /** + * Auto-load our classes if called + * + * @param string $cls Class to load + * + * @return boolean hook return + */ + + function onAutoload($cls) { - switch ($cls) + switch (strtolower($cls)) { - case 'FlagprofileAction': - case 'AdminprofileflagAction': - require_once(INSTALLDIR.'/plugins/UserFlag/' . strtolower(mb_substr($cls, 0, -6)) . '.php'); + case 'flagprofileaction': + case 'adminprofileflagaction': + case 'clearflagaction': + include_once INSTALLDIR.'/plugins/UserFlag/' . + strtolower(mb_substr($cls, 0, -6)) . '.php'; return false; - case 'FlagProfileForm': - require_once(INSTALLDIR.'/plugins/UserFlag/' . strtolower($cls . '.php')); + case 'flagprofileform': + case 'clearflagform': + include_once INSTALLDIR.'/plugins/UserFlag/' . strtolower($cls . '.php'); return false; - case 'User_flag_profile': - require_once(INSTALLDIR.'/plugins/UserFlag/'.$cls.'.php'); + case 'user_flag_profile': + include_once INSTALLDIR.'/plugins/UserFlag/'.ucfirst(strtolower($cls)).'.php'; return false; default: return true; } } + /** + * Add a 'flag' button to profile page + * + * @param Action &$action The action being called + * @param Profile $profile Profile being shown + * + * @return boolean hook result + */ + function onEndProfilePageActionsElements(&$action, $profile) { $user = common_current_user(); @@ -105,8 +143,8 @@ class UserFlagPlugin extends Plugin $action->element('p', 'flagged', _('Flagged')); } else { $form = new FlagProfileForm($action, $profile, - array('action' => 'showstream', - 'nickname' => $profile->nickname)); + array('action' => 'showstream', + 'nickname' => $profile->nickname)); $form->show(); } @@ -116,6 +154,14 @@ class UserFlagPlugin extends Plugin return true; } + /** + * Add a 'flag' button to profiles in a list + * + * @param ProfileListItem $item item being shown + * + * @return boolean hook result + */ + function onEndProfileListItemActionElements($item) { $user = common_current_user(); @@ -136,16 +182,115 @@ class UserFlagPlugin extends Plugin return true; } + /** + * Add our plugin's CSS to page output + * + * @param Action $action action being shown + * + * @return boolean hook result + */ + function onEndShowStatusNetStyles($action) { - $action->cssLink(common_path('plugins/UserFlag/userflag.css'), + $action->cssLink(common_path('plugins/UserFlag/userflag.css'), null, 'screen, projection, tv'); return true; } + /** + * Initialize any flagging buttons on the page + * + * @param Action $action action being shown + * + * @return boolean hook result + */ + function onEndShowScripts($action) { - $action->inlineScript('if ($(".form_entity_flag").length > 0) { SN.U.FormXHR($(".form_entity_flag")); }'); + $action->inlineScript('if ($(".form_entity_flag").length > 0) { '. + 'SN.U.FormXHR($(".form_entity_flag")); '. + '}'); + return true; + } + + /** + * Check whether a user has one of our defined rights + * + * We define extra rights; this function checks to see if a + * user has one of them. + * + * @param User $user User being checked + * @param string $right Right we're checking + * @param boolean &$result out, result of the check + * + * @return boolean hook result + */ + + function onUserRightsCheck($user, $right, &$result) + { + switch ($right) { + case self::REVIEWFLAGS: + case self::CLEARFLAGS: + $result = $user->hasRole('moderator'); + return false; // done processing! + } + + return true; // unchanged! + } + + /** + * Optionally flag profile when a block happens + * + * We optionally add a flag when a profile has been blocked + * + * @param User $user User doing the block + * @param Profile $profile Profile being blocked + * + * @return boolean hook result + */ + + function onEndBlockProfile($user, $profile) + { + if ($this->flagOnBlock && !User_flag_profile::exists($profile->id, + $user->id)) { + + User_flag_profile::create($user->id, $profile->id); + } + return true; + } + + /** + * Ensure that flag entries for a profile are deleted + * along with the profile when deleting users. + * This prevents breakage of the admin profile flag UI. + * + * @param Profile $profile + * @param array &$related list of related tables; entries + * with matching profile_id will be deleted. + * + * @return boolean hook result + */ + + function onProfileDeleteRelated($profile, &$related) + { + $related[] = 'user_flag_profile'; + return true; + } + + /** + * Ensure that flag entries created by a user are deleted + * when that user gets deleted. + * + * @param User $user + * @param array &$related list of related tables; entries + * with matching user_id will be deleted. + * + * @return boolean hook result + */ + + function onUserDeleteRelated($user, &$related) + { + $related[] = 'user_flag_profile'; return true; } } diff --git a/plugins/UserFlag/User_flag_profile.php b/plugins/UserFlag/User_flag_profile.php index 30bd4ae68..bc4251cf7 100644 --- a/plugins/UserFlag/User_flag_profile.php +++ b/plugins/UserFlag/User_flag_profile.php @@ -1,5 +1,15 @@ <?php -/* +/** + * Data class for profile flags + * + * PHP version 5 + * + * @category Data + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * * StatusNet - the distributed open-source microblogging tool * Copyright (C) 2009, StatusNet, Inc. * @@ -23,6 +33,18 @@ if (!defined('STATUSNET')) { require_once INSTALLDIR . '/classes/Memcached_DataObject.php'; +/** + * Data class for profile flags + * + * A class representing a user flagging another profile for review. + * + * @category Action + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + */ + class User_flag_profile extends Memcached_DataObject { ###START_AUTOCODE @@ -40,7 +62,14 @@ class User_flag_profile extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - function table() { + /** + * return table definition for DB_DataObject + * + * @return array array of column definitions + */ + + function table() + { return array( 'profile_id' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL, 'user_id' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL, @@ -49,15 +78,50 @@ class User_flag_profile extends Memcached_DataObject ); } - function keys() { + /** + * return key definitions for DB_DataObject + * + * @return array key definitions + */ + + function keys() + { return array('profile_id' => 'N', 'user_id' => 'N'); } - function &pkeyGet($kv) + /** + * return key definitions for DB_DataObject + * + * @return array key definitions + */ + + function keyTypes() + { + return $this->keys(); + } + + /** + * Get a single object with multiple keys + * + * @param array $kv Map of key-value pairs + * + * @return User_flag_profile found object or null + */ + + function pkeyGet($kv) { return Memcached_DataObject::pkeyGet('User_flag_profile', $kv); } + /** + * Check if a flag exists for given profile and user + * + * @param integer $profile_id Profile to check for + * @param integer $user_id User to check for + * + * @return boolean true if exists, else false + */ + static function exists($profile_id, $user_id) { $ufp = User_flag_profile::pkeyGet(array('profile_id' => $profile_id, @@ -65,4 +129,23 @@ class User_flag_profile extends Memcached_DataObject return !empty($ufp); } + + static function create($user_id, $profile_id) + { + $ufp = new User_flag_profile(); + + $ufp->profile_id = $profile_id; + $ufp->user_id = $user_id; + $ufp->created = common_sql_now(); + + if (!$ufp->insert()) { + $msg = sprintf(_("Couldn't flag profile '%d' for review."), + $profile_id); + throw new ServerException($msg); + } + + $ufp->free(); + + return true; + } } diff --git a/plugins/UserFlag/adminprofileflag.php b/plugins/UserFlag/adminprofileflag.php index 20b808637..17374927b 100644 --- a/plugins/UserFlag/adminprofileflag.php +++ b/plugins/UserFlag/adminprofileflag.php @@ -43,6 +43,9 @@ if (!defined('STATUSNET')) { class AdminprofileflagAction extends Action { + var $page = null; + var $profiles = null; + /** * Take arguments for running * @@ -55,6 +58,47 @@ class AdminprofileflagAction extends Action { parent::prepare($args); + $user = common_current_user(); + + // User must be logged in. + + if (!common_logged_in()) { + $this->clientError(_('Not logged in.')); + return; + } + + $user = common_current_user(); + + // ...because they're logged in + + assert(!empty($user)); + + // It must be a "real" login, not saved cookie login + + if (!common_is_real_login()) { + // Cookie theft is too easy; we require automatic + // logins to re-authenticate before admining the site + common_set_returnto($this->selfUrl()); + if (Event::handle('RedirectToLogin', array($this, $user))) { + common_redirect(common_local_url('login'), 303); + } + } + + // User must have the right to review flags + + if (!$user->hasRight(UserFlagPlugin::REVIEWFLAGS)) { + $this->clientError(_('You cannot review profile flags.')); + return false; + } + + $this->page = $this->trimmed('page'); + + if (empty($this->page)) { + $this->page = 1; + } + + $this->profiles = $this->getProfiles(); + return true; } @@ -73,7 +117,14 @@ class AdminprofileflagAction extends Action $this->showPage(); } - function title() { + /** + * Title of this page + * + * @return string Title of the page + */ + + function title() + { return _('Flagged profiles'); } @@ -85,13 +136,20 @@ class AdminprofileflagAction extends Action function showContent() { - $profile = $this->getProfiles(); + $pl = new FlaggedProfileList($this->profiles, $this); - $pl = new FlaggedProfileList($profile, $this); + $cnt = $pl->show(); - $pl->show(); + $this->pagination($this->page > 1, $cnt > PROFILES_PER_PAGE, + $this->page, 'adminprofileflag'); } + /** + * Retrieve this action's profiles + * + * @return Profile $profile Profile query results + */ + function getProfiles() { $ufp = new User_flag_profile(); @@ -103,7 +161,12 @@ class AdminprofileflagAction extends Action $ufp->whereAdd('cleared is NULL'); $ufp->groupBy('profile_id'); - $ufp->orderBy('flag_count DESC'); + $ufp->orderBy('flag_count DESC, profile_id DESC'); + + $offset = ($this->page-1) * PROFILES_PER_PAGE; + $limit = PROFILES_PER_PAGE + 1; + + $ufp->limit($offset, $limit); $profiles = array(); @@ -122,7 +185,27 @@ class AdminprofileflagAction extends Action } } -class FlaggedProfileList extends ProfileList { +/** + * Specialization of ProfileList to show flagging information + * + * Most of the hard part is done in FlaggedProfileListItem. + * + * @category Widget + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + */ + +class FlaggedProfileList extends ProfileList +{ + /** + * Factory method for creating new list items + * + * @param Profile $profile Profile to create an item for + * + * @return ProfileListItem newly-created item + */ function newListItem($profile) { @@ -130,11 +213,29 @@ class FlaggedProfileList extends ProfileList { } } +/** + * Specialization of ProfileListItem to show flagging information + * + * @category Widget + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + */ + class FlaggedProfileListItem extends ProfileListItem { - var $user = null; + const MAX_FLAGGERS = 5; + + var $user = null; var $r2args = null; + /** + * Overload parent's action list with our own moderation-oriented buttons + * + * @return void + */ + function showActions() { $this->user = common_current_user(); @@ -159,6 +260,12 @@ class FlaggedProfileListItem extends ProfileListItem $this->endActions(); } + /** + * Show a button to sandbox the profile + * + * @return void + */ + function showSandboxButton() { if ($this->user->hasRight(Right::SANDBOXUSER)) { @@ -174,6 +281,12 @@ class FlaggedProfileListItem extends ProfileListItem } } + /** + * Show a button to silence the profile + * + * @return void + */ + function showSilenceButton() { if ($this->user->hasRight(Right::SILENCEUSER)) { @@ -189,6 +302,12 @@ class FlaggedProfileListItem extends ProfileListItem } } + /** + * Show a button to delete user and profile + * + * @return void + */ + function showDeleteButton() { @@ -200,7 +319,92 @@ class FlaggedProfileListItem extends ProfileListItem } } + /** + * Show a button to clear flags + * + * @return void + */ + function showClearButton() { + if ($this->user->hasRight(UserFlagPlugin::CLEARFLAGS)) { + $this->out->elementStart('li', 'entity_clear'); + $cf = new ClearFlagForm($this->out, $this->profile, $this->r2args); + $cf->show(); + $this->out->elementEnd('li'); + } + } + + /** + * Overload parent function to add flaggers list + * + * @return void + */ + + function endProfile() + { + $this->showFlaggersList(); + parent::endProfile(); + } + + /** + * Show a list of people who've flagged this profile + * + * @return void + */ + + function showFlaggersList() + { + $flaggers = array(); + + $ufp = new User_flag_profile(); + + $ufp->selectAdd(); + $ufp->selectAdd('user_id'); + $ufp->profile_id = $this->profile->id; + $ufp->orderBy('created'); + + if ($ufp->find()) { // XXX: this should always happen + while ($ufp->fetch()) { + $user = User::staticGet('id', $ufp->user_id); + if (!empty($user)) { // XXX: this would also be unusual + $flaggers[] = clone($user); + } + } + } + + $cnt = count($flaggers); + $others = 0; + + if ($cnt > self::MAX_FLAGGERS) { + $flaggers = array_slice($flaggers, 0, self::MAX_FLAGGERS); + $others = $cnt - self::MAX_FLAGGERS; + } + + $lnks = array(); + + foreach ($flaggers as $flagger) { + + $url = common_local_url('showstream', + array('nickname' => $flagger->nickname)); + + $lnks[] = XMLStringer::estring('a', array('href' => $url, + 'class' => 'flagger'), + $flagger->nickname); + } + + if ($cnt > 0) { + $text = _('Flagged by '); + + $text .= implode(', ', $lnks); + + if ($others > 0) { + $text .= sprintf(_(' and %d others'), $others); + } + + $this->out->elementStart('p', array('class' => 'flaggers')); + $this->out->raw($text); + $this->out->elementEnd('p'); + } } } diff --git a/plugins/UserFlag/clearflag.php b/plugins/UserFlag/clearflag.php new file mode 100644 index 000000000..bd6732e2d --- /dev/null +++ b/plugins/UserFlag/clearflag.php @@ -0,0 +1,138 @@ +<?php +/** + * Clear all flags for a profile + * + * PHP version 5 + * + * @category Action + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + * + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Action to clear flags for a profile + * + * @category Action + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 + * @link http://status.net/ + */ + +class ClearflagAction extends ProfileFormAction +{ + /** + * Take arguments for running + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + */ + + function prepare($args) + { + if (!parent::prepare($args)) { + return false; + } + + $user = common_current_user(); + + assert(!empty($user)); // checked above + assert(!empty($this->profile)); // checked above + + return true; + } + + /** + * Handle request + * + * Overriding the base Action's handle() here to deal check + * for Ajax and return an HXR response if necessary + * + * @param array $args $_REQUEST args; handled in prepare() + * + * @return void + */ + + function handle($args) + { + if ($_SERVER['REQUEST_METHOD'] == 'POST') { + $this->handlePost(); + if (!$this->boolean('ajax')) { + $this->returnToArgs(); + } + } + } + + /** + * Handle POST + * + * Executes the actions; deletes all flags + * + * @return void + */ + + function handlePost() + { + $ufp = new User_flag_profile(); + + $result = $ufp->query('UPDATE user_flag_profile ' . + 'SET cleared = now() ' . + 'WHERE cleared is null ' . + 'AND profile_id = ' . $this->profile->id); + + if ($result == false) { + $msg = sprintf(_("Couldn't clear flags for profile '%s'."), + $this->profile->nickname); + throw new ServerException($msg); + } + + $ufp->free(); + + if ($this->boolean('ajax')) { + $this->ajaxResults(); + } + } + + /** + * Return results in ajax form + * + * @return void + */ + + function ajaxResults() + { + header('Content-Type: text/xml;charset=utf-8'); + $this->xw->startDocument('1.0', 'UTF-8'); + $this->elementStart('html'); + $this->elementStart('head'); + $this->element('title', null, _('Flags cleared')); + $this->elementEnd('head'); + $this->elementStart('body'); + $this->element('p', 'cleared', _('Cleared')); + $this->elementEnd('body'); + $this->elementEnd('html'); + } +} diff --git a/plugins/UserFlag/clearflagform.php b/plugins/UserFlag/clearflagform.php new file mode 100644 index 000000000..5ad6055d3 --- /dev/null +++ b/plugins/UserFlag/clearflagform.php @@ -0,0 +1,92 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Form for clearing profile flags + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Form + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR.'/lib/form.php'; + +/** + * Form for clearing profile flags + * + * @category Form + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class ClearFlagForm extends ProfileActionForm +{ + /** + * class of the form + * Action this form provides + * + * @return string class of the form + */ + + function formClass() + { + return 'form_entity_clearflag'; + } + + /** + * Action this form provides + * + * @return string Name of the action, lowercased. + */ + + function target() + { + return 'clearflag'; + } + + /** + * Title of the form + * + * @return string Title of the form, internationalized + */ + + function title() + { + return _('Clear'); + } + + /** + * Description of the form + * + * @return string description of the form, internationalized + */ + + function description() + { + return _('Clear all flags'); + } +} diff --git a/plugins/UserFlag/flagprofile.php b/plugins/UserFlag/flagprofile.php index 9bce7865b..2d0f0abb9 100644 --- a/plugins/UserFlag/flagprofile.php +++ b/plugins/UserFlag/flagprofile.php @@ -63,8 +63,7 @@ class FlagprofileAction extends ProfileFormAction assert(!empty($this->profile)); // checked above if (User_flag_profile::exists($this->profile->id, - $user->id)) - { + $user->id)) { $this->clientError(_('Flag already exists.')); return false; } @@ -72,7 +71,6 @@ class FlagprofileAction extends ProfileFormAction return true; } - /** * Handle request * @@ -107,25 +105,23 @@ class FlagprofileAction extends ProfileFormAction assert(!empty($user)); assert(!empty($this->profile)); - $ufp = new User_flag_profile(); - - $ufp->profile_id = $this->profile->id; - $ufp->user_id = $user->id; - $ufp->created = common_sql_now(); + // throws an exception on error - if (!$ufp->insert()) { - throw new ServerException(sprintf(_("Couldn't flag profile '%s' for review."), - $this->profile->nickname)); - } - - $ufp->free(); + User_flag_profile::create($user->id, $this->profile->id); if ($this->boolean('ajax')) { $this->ajaxResults(); } } - function ajaxResults() { + /** + * Return results as AJAX message + * + * @return void + */ + + function ajaxResults() + { header('Content-Type: text/xml;charset=utf-8'); $this->xw->startDocument('1.0', 'UTF-8'); $this->elementStart('html'); diff --git a/plugins/WikiHashtagsPlugin.php b/plugins/WikiHashtagsPlugin.php index 334fc13ba..c6c976b8f 100644 --- a/plugins/WikiHashtagsPlugin.php +++ b/plugins/WikiHashtagsPlugin.php @@ -31,8 +31,6 @@ if (!defined('STATUSNET')) { exit(1); } -define('WIKIHASHTAGSPLUGIN_VERSION', '0.1'); - /** * Plugin to use WikiHashtags * @@ -47,6 +45,8 @@ define('WIKIHASHTAGSPLUGIN_VERSION', '0.1'); class WikiHashtagsPlugin extends Plugin { + const VERSION = '0.1'; + function __construct($code=null) { parent::__construct(); @@ -99,4 +99,15 @@ class WikiHashtagsPlugin extends Plugin return true; } + + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'WikiHashtags', + 'version' => self::VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:WikiHashtags', + 'rawdescription' => + _m('Gets hashtag descriptions from <a href="http://hashtags.wikia.com/">WikiHashtags</a>.')); + return true; + } } diff --git a/plugins/XCachePlugin.php b/plugins/XCachePlugin.php new file mode 100644 index 000000000..03cb0c06e --- /dev/null +++ b/plugins/XCachePlugin.php @@ -0,0 +1,113 @@ +<?php +/** + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * Plugin to implement cache interface for XCache variable cache + * + * PHP version 5 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * A plugin to use XCache's variable cache for the cache interface + * + * New plugin interface lets us use alternative cache systems + * for caching. This one uses XCache's variable cache. + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou <evan@status.net> + * @copyright 2009 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class XCachePlugin extends Plugin +{ + /** + * Get a value associated with a key + * + * The value should have been set previously. + * + * @param string &$key in; Lookup key + * @param mixed &$value out; value associated with key + * + * @return boolean hook success + */ + + function onStartCacheGet(&$key, &$value) + { + if (!xcache_isset($key)) { + $value = false; + } else { + $value = xcache_get($key); + $value = unserialize($value); + } + Event::handle('EndCacheGet', array($key, &$value)); + return false; + } + + /** + * Associate a value with a key + * + * @param string &$key in; Key to use for lookups + * @param mixed &$value in; Value to associate + * @param integer &$flag in; Flag (passed through to Memcache) + * @param integer &$expiry in; Expiry (passed through to Memcache) + * @param boolean &$success out; Whether the set was successful + * + * @return boolean hook success + */ + + function onStartCacheSet(&$key, &$value, &$flag, &$expiry, &$success) + { + $success = xcache_set($key, serialize($value)); + + Event::handle('EndCacheSet', array($key, $value, $flag, + $expiry)); + return false; + } + + /** + * Delete a value associated with a key + * + * @param string &$key in; Key to lookup + * @param boolean &$success out; whether it worked + * + * @return boolean hook success + */ + + function onStartCacheDelete(&$key, &$success) + { + $success = xcache_unset($key); + Event::handle('EndCacheDelete', array($key)); + return false; + } +} + diff --git a/scripts/console.php b/scripts/console.php index 329caf472..8b62a3a96 100755 --- a/scripts/console.php +++ b/scripts/console.php @@ -128,6 +128,8 @@ function console_help() if (CONSOLE_INTERACTIVE) { print "StatusNet interactive PHP console... type ctrl+D or enter 'exit' to exit.\n"; $prompt = common_config('site', 'name') . '> '; +} else { + $prompt = ''; } while (!feof(STDIN)) { $line = read_input_line($prompt); diff --git a/scripts/createsim.php b/scripts/createsim.php index 1266a9700..882d74456 100644 --- a/scripts/createsim.php +++ b/scripts/createsim.php @@ -41,9 +41,12 @@ require_once INSTALLDIR.'/scripts/commandline.inc'; function newUser($i) { global $userprefix; - User::register(array('nickname' => sprintf('%s%d', $userprefix, $i), - 'password' => sprintf('password%d', $i), - 'fullname' => sprintf('Test User %d', $i))); + $user = User::register(array('nickname' => sprintf('%s%d', $userprefix, $i), + 'password' => sprintf('password%d', $i), + 'fullname' => sprintf('Test User %d', $i))); + if (!empty($user)) { + $user->free(); + } } function newNotice($i, $tagmax) @@ -73,6 +76,9 @@ function newNotice($i, $tagmax) } $notice = Notice::saveNew($user->id, $content, 'system'); + + $user->free(); + $notice->free(); } function newSub($i) @@ -106,6 +112,9 @@ function newSub($i) } subs_subscribe_to($from, $to); + + $from->free(); + $to->free(); } function main($usercount, $noticeavg, $subsavg, $tagmax) diff --git a/scripts/maildaemon.php b/scripts/maildaemon.php index b4e4d9f08..3b1ef96a1 100755 --- a/scripts/maildaemon.php +++ b/scripts/maildaemon.php @@ -27,266 +27,9 @@ as STDIN. END_OF_HELP; require_once INSTALLDIR.'/scripts/commandline.inc'; - -require_once(INSTALLDIR . '/lib/mail.php'); -require_once(INSTALLDIR . '/lib/mediafile.php'); -require_once('Mail/mimeDecode.php'); - -# FIXME: we use both Mail_mimeDecode and mailparse -# Need to move everything to mailparse - -class MailerDaemon -{ - function __construct() - { - } - - function handle_message($fname='php://stdin') - { - list($from, $to, $msg, $attachments) = $this->parse_message($fname); - if (!$from || !$to || !$msg) { - $this->error(null, _('Could not parse message.')); - } - common_log(LOG_INFO, "Mail from $from to $to with ".count($attachments) .' attachment(s): ' .substr($msg, 0, 20)); - $user = $this->user_from($from); - if (!$user) { - $this->error($from, _('Not a registered user.')); - return false; - } - if (!$this->user_match_to($user, $to)) { - $this->error($from, _('Sorry, that is not your incoming email address.')); - return false; - } - if (!$user->emailpost) { - $this->error($from, _('Sorry, no incoming email allowed.')); - return false; - } - $response = $this->handle_command($user, $from, $msg); - if ($response) { - return true; - } - $msg = $this->cleanup_msg($msg); - $msg = common_shorten_links($msg); - if (Notice::contentTooLong($msg)) { - $this->error($from, sprintf(_('That\'s too long. '. - 'Max notice size is %d chars.'), - Notice::maxContent())); - } - - $mediafiles = array(); - - foreach($attachments as $attachment){ - - $mf = null; - - try { - $mf = MediaFile::fromFileHandle($attachment, $user); - } catch(ClientException $ce) { - $this->error($from, $ce->getMessage()); - } - - $msg .= ' ' . $mf->shortUrl(); - - array_push($mediafiles, $mf); - fclose($attachment); - } - - $err = $this->add_notice($user, $msg, $mediafiles); - - if (is_string($err)) { - $this->error($from, $err); - return false; - } else { - return true; - } - } - - function error($from, $msg) - { - file_put_contents("php://stderr", $msg . "\n"); - exit(1); - } - - function user_from($from_hdr) - { - $froms = mailparse_rfc822_parse_addresses($from_hdr); - if (!$froms) { - return null; - } - $from = $froms[0]; - $addr = common_canonical_email($from['address']); - $user = User::staticGet('email', $addr); - if (!$user) { - $user = User::staticGet('smsemail', $addr); - } - return $user; - } - - function user_match_to($user, $to_hdr) - { - $incoming = $user->incomingemail; - $tos = mailparse_rfc822_parse_addresses($to_hdr); - foreach ($tos as $to) { - if (strcasecmp($incoming, $to['address']) == 0) { - return true; - } - } - return false; - } - - function handle_command($user, $from, $msg) - { - $inter = new CommandInterpreter(); - $cmd = $inter->handle_command($user, $msg); - if ($cmd) { - $cmd->execute(new MailChannel($from)); - return true; - } - return false; - } - - function respond($from, $to, $response) - { - - $headers['From'] = $to; - $headers['To'] = $from; - $headers['Subject'] = "Command complete"; - - return mail_send(array($from), $headers, $response); - } - - function log($level, $msg) - { - common_log($level, 'MailDaemon: '.$msg); - } - - function add_notice($user, $msg, $mediafiles) - { - try { - $notice = Notice::saveNew($user->id, $msg, 'mail'); - } catch (Exception $e) { - $this->log(LOG_ERR, $e->getMessage()); - return $e->getMessage(); - } - foreach($mediafiles as $mf){ - $mf->attachToNotice($notice); - } - common_broadcast_notice($notice); - $this->log(LOG_INFO, - 'Added notice ' . $notice->id . ' from user ' . $user->nickname); - return true; - } - - function parse_message($fname) - { - $contents = file_get_contents($fname); - $parsed = Mail_mimeDecode::decode(array('input' => $contents, - 'include_bodies' => true, - 'decode_headers' => true, - 'decode_bodies' => true)); - if (!$parsed) { - return null; - } - - $from = $parsed->headers['from']; - - $to = $parsed->headers['to']; - - $type = $parsed->ctype_primary . '/' . $parsed->ctype_secondary; - - $attachments = array(); - - $this->extract_part($parsed,$msg,$attachments); - - return array($from, $to, $msg, $attachments); - } - - function extract_part($parsed,&$msg,&$attachments){ - if ($parsed->ctype_primary == 'multipart') { - if($parsed->ctype_secondary == 'alternative'){ - $altmsg = $this->extract_msg_from_multipart_alternative_part($parsed); - if(!empty($altmsg)) $msg = $altmsg; - }else{ - foreach($parsed->parts as $part){ - $this->extract_part($part,$msg,$attachments); - } - } - } else if ($parsed->ctype_primary == 'text' - && $parsed->ctype_secondary=='plain') { - $msg = $parsed->body; - if(strtolower($parsed->ctype_parameters['charset']) != "utf-8"){ - $msg = utf8_encode($msg); - } - }else if(!empty($parsed->body)){ - if(common_config('attachments', 'uploads')){ - //only save attachments if uploads are enabled - $attachment = tmpfile(); - fwrite($attachment, $parsed->body); - $attachments[] = $attachment; - } - } - } - - function extract_msg_from_multipart_alternative_part($parsed){ - foreach ($parsed->parts as $part) { - $this->extract_part($part,$msg,$attachments); - } - //we don't want any attachments that are a result of this parsing - return $msg; - } - - function unsupported_type($type) - { - $this->error(null, "Unsupported message type: " . $type); - } - - function cleanup_msg($msg) - { - $lines = explode("\n", $msg); - - $output = ''; - - foreach ($lines as $line) { - // skip quotes - if (preg_match('/^\s*>.*$/', $line)) { - continue; - } - // skip start of quote - if (preg_match('/^\s*On.*wrote:\s*$/', $line)) { - continue; - } - // probably interesting to someone, not us - if (preg_match('/^\s*Sent via/', $line)) { - continue; - } - if (preg_match('/^\s*Sent from my/', $line)) { - continue; - } - - // skip everything after a sig - if (preg_match('/^\s*--+\s*$/', $line) || - preg_match('/^\s*__+\s*$/', $line)) - { - break; - } - // skip everything after Outlook quote - if (preg_match('/^\s*-+\s*Original Message\s*-+\s*$/', $line)) { - break; - } - // skip everything after weird forward - if (preg_match('/^\s*Begin\s+forward/', $line)) { - break; - } - - $output .= ' ' . $line; - } - - preg_replace('/\s+/', ' ', $output); - return trim($output); - } -} +require_once INSTALLDIR.'/lib/mailhandler.php'; if (common_config('emailpost', 'enabled')) { - $md = new MailerDaemon(); - $md->handle_message('php://stdin'); + $mh = new MailHandler(); + $mh->handle_message(file_get_contents('php://stdin')); } diff --git a/scripts/setconfig.php b/scripts/setconfig.php index b102f99b1..b102f99b1 100755..100644 --- a/scripts/setconfig.php +++ b/scripts/setconfig.php diff --git a/scripts/stopdaemons.sh b/scripts/stopdaemons.sh index 90e7331ca..c790f1f34 100755 --- a/scripts/stopdaemons.sh +++ b/scripts/stopdaemons.sh @@ -25,7 +25,7 @@ DIR=`php $SDIR/getpiddir.php` for f in jabberhandler ombhandler publichandler smshandler pinghandler \ xmppconfirmhandler xmppdaemon twitterhandler facebookhandler \ - twitterstatusfetcher synctwitterfriends pluginhandler; do + twitterstatusfetcher synctwitterfriends pluginhandler rsscloudhandler; do FILES="$DIR/$f.*.pid" for ff in "$FILES" ; do diff --git a/scripts/triminboxes.php b/scripts/triminboxes.php index da09817e5..ea4751305 100644 --- a/scripts/triminboxes.php +++ b/scripts/triminboxes.php @@ -21,19 +21,21 @@ define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); $shortoptions = 'u::'; -$longoptions = array('start-user-id::'); +$longoptions = array('start-user-id=', 'sleep-time='); $helptext = <<<END_OF_TRIM_HELP Batch script for trimming notice inboxes to a reasonable size. -u <id> --start-user-id=<id> User ID to start after. Default is all. + --sleep-time=<integer> Amount of time to wait (in seconds) between trims. Default is zero. END_OF_TRIM_HELP; require_once INSTALLDIR.'/scripts/commandline.inc'; $id = null; +$sleep_time = 0; if (have_option('u')) { $id = get_option_value('u'); @@ -43,6 +45,12 @@ if (have_option('u')) { $id = null; } +if (have_option('--sleep-time')) { + $sleep_time = intval(get_option_value('--sleep-time')); +} + +$quiet = have_option('q') || have_option('--quiet'); + $user = new User(); if (!empty($id)) { @@ -52,5 +60,17 @@ if (!empty($id)) { $cnt = $user->find(); while ($user->fetch()) { - Notice_inbox::gc($user->id); + if (!$quiet) { + print "Trimming inbox for user $user->id"; + } + $count = Notice_inbox::gc($user->id); + if ($count) { + if (!$quiet) { + print ": $count trimmed..."; + } + sleep($sleep_time); + } + if (!$quiet) { + print "\n"; + } } diff --git a/scripts/updatelocation.php b/scripts/updatelocation.php new file mode 100644 index 000000000..4110660ab --- /dev/null +++ b/scripts/updatelocation.php @@ -0,0 +1,125 @@ +#!/usr/bin/env php +<?php +/* + * StatusNet - a distributed open-source microblogging tool + * Copyright (C) 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); + +$shortoptions = 'i:n:af'; +$longoptions = array('id=', 'nickname=', 'all', 'force'); + +$helptext = <<<END_OF_UPDATELOCATION_HELP +updatelocation.php [options] +set the location for a profile + + -i --id ID of user to update + -n --nickname nickname of the user to update + -f --force force update even if user already has a location + -a --all update all + +END_OF_UPDATELOCATION_HELP; + +require_once INSTALLDIR.'/scripts/commandline.inc'; + +try { + $user = null; + + if (have_option('i', 'id')) { + $id = get_option_value('i', 'id'); + $user = User::staticGet('id', $id); + if (empty($user)) { + throw new Exception("Can't find user with id '$id'."); + } + updateLocation($user); + } else if (have_option('n', 'nickname')) { + $nickname = get_option_value('n', 'nickname'); + $user = User::staticGet('nickname', $nickname); + if (empty($user)) { + throw new Exception("Can't find user with nickname '$nickname'"); + } + updateLocation($user); + } else if (have_option('a', 'all')) { + $user = new User(); + if ($user->find()) { + while ($user->fetch()) { + updateLocation($user); + } + } + } else { + show_help(); + exit(1); + } +} catch (Exception $e) { + print $e->getMessage()."\n"; + exit(1); +} + +function updateLocation($user) +{ + $profile = $user->getProfile(); + + if (empty($profile)) { + throw new Exception("User has no profile: " . $user->nickname); + } + + if (empty($profile->location)) { + if (have_option('v', 'verbose')) { + print "No location string for '".$user->nickname."'\n"; + } + return; + } + + if (!empty($profile->location_id) && !have_option('f', 'force')) { + if (have_option('v', 'verbose')) { + print "Location ID already set for '".$user->nickname."'\n"; + } + return; + } + + $loc = Location::fromName($profile->location); + + if (empty($loc)) { + if (have_option('v', 'verbose')) { + print "No structured location for string '".$profile->location."' for user '".$user->nickname."'\n"; + } + return; + } else { + $orig = clone($profile); + + $profile->lat = $loc->lat; + $profile->lon = $loc->lon; + $profile->location_id = $loc->location_id; + $profile->location_ns = $loc->location_ns; + + $result = $profile->update($orig); + + if (!$result) { + common_log_db_error($profile, 'UPDATE', __FILE__); + } + + if (!have_option('q', 'quiet')) { + print "Location ID " . $profile->location_id . " set for user " . $user->nickname . "\n"; + } + } + + $profile->free(); + unset($loc); + unset($profile); + + return; +} diff --git a/theme/base/css/display.css b/theme/base/css/display.css index 29c7ee963..cdacb9a62 100644 --- a/theme/base/css/display.css +++ b/theme/base/css/display.css @@ -554,20 +554,53 @@ width:81.5%; margin-bottom:0; line-height:1.618; } -.form_notice #notice_data-attach_selected code { +.form_notice #notice_data-attach_selected code, +.form_notice #notice_data-geo_name { float:left; -width:90%; +width:80%; display:block; -font-size:1.1em; -line-height:1.8; overflow:auto; +margin-right:2.5%; +} +.form_notice #notice_data-attach_selected code { +font-size:1.1em; } -.form_notice #notice_data-attach_selected button { +.form_notice #notice_data-attach_selected button.close, +.form_notice #notice_data-geo_selected button.close { float:right; font-size:0.8em; } -button.close { +.form_notice #notice_data-geo_selected button.minimize { +float:left; +} + +.form_notice #notice_data-geo_wrap label { +position:absolute; +top:25px; +right:4px; +left:auto; +cursor:pointer; +width:16px; +height:16px; +display:block; +} +.form_notice #notice_data-geo_wrap input { +display:none; +} +.form_notice #notice_data-geo_wrap label { +font-weight:normal; +font-size:1em; +margin-bottom:0; +text-indent:-9999px; +} +.form_notice #notice_data-geo_name { +display:block; +padding-left:21px; +} + +button.close, +button.minimize { width:16px; height:16px; text-indent:-9999px; @@ -1295,11 +1328,9 @@ padding-right:30px; .hentry .entry-content p { margin-bottom:18px; } -.system_notice ul, -.instructions ul, -.hentry entry-content ol, +.hentry .entry-content ol, .hentry .entry-content ul { -list-style-position:inside; +margin-left:1.795%; } .hentry .entry-content li { margin-bottom:18px; @@ -1308,6 +1339,31 @@ margin-bottom:18px; margin-left:18px; } +#content #plugin_authors { +min-width:122px; +} +#content thead th { +text-align:left; +} +#content tbody th { +vertical-align:top; +text-align:left; +font-weight:normal; +padding-top:11px; +padding-right:18px; +} +#content tbody tr { +border-top-width:1px; +border-top-style:dotted; +} +#content td { +padding:11px 18px 11px 0; +vertical-align:top; +} +#content td:last-child { +padding-right:0; +} + /* TOP_POSTERS */ .section tbody td { padding-right:18px; @@ -1444,6 +1500,7 @@ margin-left:0; width:auto; } +.system_notice ul, .instructions ul { list-style-position:inside; } diff --git a/theme/base/images/icons/icon_geo.png b/theme/base/images/icons/icon_geo.png Binary files differnew file mode 100644 index 000000000..8df245699 --- /dev/null +++ b/theme/base/images/icons/icon_geo.png diff --git a/theme/base/images/icons/icons-01.gif b/theme/base/images/icons/icons-01.gif Binary files differindex 417327881..06202a047 100644 --- a/theme/base/images/icons/icons-01.gif +++ b/theme/base/images/icons/icons-01.gif diff --git a/theme/cloudy/css/display.css b/theme/cloudy/css/display.css index 3fe05eb3d..726062e47 100644 --- a/theme/cloudy/css/display.css +++ b/theme/cloudy/css/display.css @@ -228,9 +228,21 @@ font-weight:bold; address img + .fn { display:none; } +address a { +text-decoration:none; +} +address .poweredby { +float:left; +clear:left; +display:block; +position:relative; +top:7px; +margin-right:-47px; +} #header { width:100%; +height:10.5em; position:relative; float:left; padding-top:18px; @@ -446,120 +458,156 @@ border-right:0; border-top:0; } -#form_notice { -width:505px; +.form_notice { +width:515px; line-height:1; position:absolute; top:200px; left:20px; z-index:9; } -#form_notice fieldset { +.form_notice fieldset { border:0; -padding:0 0 50px 0; +padding:0; +position:relative; } -#form_notice legend { +.form_notice legend { display:none; } -#form_notice textarea { +.form_notice textarea { float:left; -width:505px; -height:45px; +border-radius:7px; +-moz-border-radius:7px; +-webkit-border-radius:7px; +width:80.789%; +height:67px; line-height:1.5; -padding:5px; -border-width:1px; +padding:7px 7px 16px 7px; +position:relative; +z-index:2; } -#form_notice label { +.form_notice label { display:block; float:left; font-size:1.3em; margin-bottom:7px; } -#form_notice #notice_submit label { -display:none; -} -#form_notice label[for=notice_data-attach], -#form_notice #notice_data-attach { +.form_notice label[for=notice_data-attach], +.form_notice #notice_data-attach { position:absolute; -top:87px; +top:25px; +right:10.5%; cursor:pointer; } -#form_notice label[for=notice_data-attach] { +.form_notice label[for=notice_data-attach] { text-indent:-9999px; -left:82%; width:16px; height:16px; } -#form_notice #notice_data-attach { -left:40%; +.form_notice #notice_data-attach { padding:0; height:16px; } - -#form_notice .form_note { +.form_notice .form_note { position:absolute; -top:-10px; -right:-10px; +bottom:2px; +right:21.715%; z-index:9; -font-family:Georgia, serif; -font-size:1.7em; } -#form_notice .form_note dt { +.form_notice .form_note dt { font-weight:bold; display:none; } -#notice_text-count { +.form_notice #notice_text-count { font-weight:bold; line-height:1.15; padding:1px 2px; } - -#form_notice #notice_action-submit { +.form_notice #notice_action-submit { width:14%; -height:35px; -padding-top:0; -padding-bottom:0; +height:47px; +padding:0; position:absolute; -bottom:10px; -right:-10px; +bottom:0; +right:0; } -#form_notice label[for=to] { +.form_notice label[for=to] { margin-top:7px; } -#form_notice select[id=to] { +.form_notice select[id=to] { margin-bottom:7px; margin-left:18px; float:left; +max-width:322px; } -#form_notice .error, -#form_notice .success { +.form_notice .error, +.form_notice .success { float:left; clear:both; -width:83.5%; +width:81.5%; margin-bottom:0; line-height:1.618; -position:absolute; -top:87px; -left:0; } -#form_notice #notice_data-attach_selected code { +.form_notice #notice_data-attach_selected code, +.form_notice #notice_data-geo_name { float:left; -width:90%; +width:80%; display:block; -font-size:1.1em; -line-height:1.8; overflow:auto; +margin-right:2.5%; +} +.form_notice #notice_data-attach_selected code { +font-size:1.1em; } -#form_notice #notice_data-attach_selected button { +.form_notice #notice_data-attach_selected button.close, +.form_notice #notice_data-geo_selected button.close { float:right; font-size:0.8em; } +.form_notice #notice_data-geo_selected button.minimize { +float:left; +} + +.form_notice #notice_data-geo_wrap label { +position:absolute; +top:25px; +right:4px; +left:auto; +cursor:pointer; +width:16px; +height:16px; +display:block; +} +.form_notice #notice_data-geo_wrap input { +display:none; +} +.form_notice #notice_data-geo_wrap label { +font-weight:normal; +font-size:1em; +margin-bottom:0; +text-indent:-9999px; +} +.form_notice #notice_data-geo_name { +display:block; +padding-left:21px; +} +button.close, +button.minimize { +width:16px; +height:16px; +text-indent:-9999px; +padding:0; +border:0; +text-align:center; +font-weight:bold; +cursor:pointer; +} /* entity_profile */ .entity_profile { position:relative; -width:67.702%; +width:68%; min-height:123px; float:left; margin-bottom:18px; @@ -586,7 +634,8 @@ margin-bottom:18px; .entity_profile .entity_location, .entity_profile .entity_url, .entity_profile .entity_note, -.entity_profile .entity_tags { +.entity_profile .entity_tags, +.entity_profile .entity_aliases { margin-left:113px; margin-bottom:4px; } @@ -595,35 +644,44 @@ margin-bottom:4px; .entity_profile .entity_nickname { margin-left:11px; display:inline; -font-weight:bold; } .entity_profile .entity_nickname { margin-left:0; } - -.entity_profile .entity_fn dd:before { +.entity_profile .fn, +.entity_profile .nickname { +font-size:1.1em; +font-weight:bold; +} +.entity_profile .fn:before { content: "("; font-weight:normal; } -.entity_profile .entity_fn dd:after { +.entity_profile .fn:after { content: ")"; font-weight:normal; } - -.entity_profile dt { -display:none; +.entity_profile .nickname:after, +.entity_profile .nickname:before { +content:""; } +.entity_profile dt, .entity_profile h2 { display:none; } +.entity_profile .role { +margin-left:11px; +font-style:italic; +} /* entity_profile */ /*entity_actions*/ .entity_actions { float:right; -margin-left:4.35%; -max-width:25%; +margin-left:2%; +margin-bottom:18px; +min-width:21%; } .entity_actions h2 { display:none; @@ -632,7 +690,7 @@ display:none; list-style-type:none; } .entity_actions li { -margin-bottom:4px; +margin-bottom:7px; } .entity_actions li:first-child { border-top:0; @@ -650,40 +708,95 @@ display:block; text-align:left; width:100%; } -.entity_actions a, -.entity_nudge p, -.entity_remote_subscribe { +.entity_actions a { text-decoration:none; font-weight:bold; display:block; } +.entity_actions a, +.entity_actions input { +border-radius:4px; +-moz-border-radius:4px; +-webkit-border-radius:4px; +} -.form_user_block input.submit, -.form_user_unblock input.submit, -.entity_send-a-message a, -.entity_edit a, -.form_user_nudge input.submit, -.entity_nudge p { -border:0; -padding-left:20px; +.entity_actions a, +.entity_actions input, +.entity_actions p { +border-width:2px; +border-style:solid; +padding-left:23px; } -.entity_edit a, -.entity_send-a-message a, -.entity_nudge p { -padding:4px 4px 4px 23px; +.entity_actions a, +.entity_actions p { +padding:2px 4px 1px 26px; } -.entity_remote_subscribe { -padding:4px; -border-width:2px; +.entity_actions .accept { +margin-bottom:18px; +} + +.entity_send-a-message button { +position:absolute; +top:3px; +right:3px; +} + +.entity_send-a-message .form_notice { +position:absolute; +top:34px; +right:-1px; +padding:1.795%; +width:92%; +z-index:2; + border-radius:7px; +-moz-border-radius:7px; +-webkit-border-radius:7px; +border-width:1px; border-style:solid; +} +.entity_send-a-message .form_notice legend { +display:block; +margin-bottom:11px; +} + +.entity_send-a-message .form_notice label, +.entity_send-a-message .form_notice select { +display:none; +} +.entity_send-a-message .form_notice input.submit { +text-align:center; +} + +.entity_moderation { +position:relative; +} +.entity_moderation p { border-radius:4px; -moz-border-radius:4px; -webkit-border-radius:4px; +font-weight:bold; +padding-bottom:2px; +margin-bottom:7px; } -.entity_actions .accept { -margin-bottom:18px; +.entity_moderation ul { +display:none; +} +.entity_moderation:hover ul { +display:block; +min-width:21%; +width:100%; +padding:11px; +position:absolute; +top:-1px; +right:-1px; +z-index:1; +border-width:1px; +border-style:solid; +border-radius:7px; +-moz-border-radius:7px; +-webkit-border-radius:7px; } .entity_tags ul { @@ -742,7 +855,6 @@ margin-bottom:0; min-height:60px; } - .profile .form_group_join legend, .profile .form_group_leave legend, .profile .form_user_subscribe legend, @@ -753,18 +865,22 @@ display:none; .profiles { list-style-type:none; } -.profile .entity_profile .entity_location { +.profile .entity_profile .fn.nickname, +.profile .entity_profile .url[rel~=contact] { +margin-left:0; +display:inline; +} + +.profile .entity_profile .fn, +.profile .entity_profile .location { +margin-left:11px; +margin-bottom:4px; width:auto; clear:none; -margin-left:11px; -} -.profile .entity_profile dl, -.profile .entity_profile dd { -display:inline; -float:none; } -.profile .entity_profile .entity_note, -.profile .entity_profile .entity_url, + +.profile .entity_profile .note, +.profile .entity_profile .url, .profile .entity_profile .entity_tags, .profile .entity_profile .form_subscription_edit { margin-left:59px; @@ -777,13 +893,11 @@ display:inline; margin-right:11px; } - .profile .entity_profile .form_subscription_edit label { font-weight:normal; margin-right:11px; } - /* NOTICE */ .notice, .profile { @@ -854,23 +968,26 @@ text-decoration:underline; } .notice .entry-title { -float:none; +float:left; +width:100%; overflow:hidden; -display:inline; +} +.notice .entry-title.ov { +overflow:visible; } #shownotice .notice .entry-title { font-size:2.2em; } -#conversation .notice .entry-title { -display:block; -width:90%; -} - .notice p.entry-content { display:inline; } +#content .notice p.entry-content a:visited { +border-radius:4px; +-moz-border-radius:4px; +-webkit-border-radius:4px; +} .notice p.entry-content .vcard a { border-radius:4px; -moz-border-radius:4px; @@ -878,23 +995,17 @@ border-radius:4px; } .notice div.entry-content { +clear:left; +float:left; font-size:0.95em; margin-left:59px; -margin-top:3px; -width:70%; -font-family:Georgia, serif; -font-style:italic; -font-size:0.8em; -display:block; -} -.notice div.entry-content a { -text-decoration:none; -} -.notice div.entry-content a:hover { -text-decoration:underline; +min-width:60%; +max-width:62%; } -#showstream .notice div.entry-content { +#showstream .notice div.entry-content, +#shownotice .notice div.entry-content { margin-left:0; +max-width:77%; } .notice .notice-options a, @@ -903,83 +1014,84 @@ float:left; font-size:1.025em; } -.notice div.entry-content dl, -.notice div.entry-content dt, -.notice div.entry-content dd { -display:inline; +.notice div.entry-content .timestamp { +display:inline-block; } -.notice div.entry-content .timestamp dt, -.notice div.entry-content .response dt { -display:none; -} -.notice div.entry-content .timestamp a { -display:inline-block; +.entry-content .repeat { +display:block; } -.notice div.entry-content .device dt { -text-transform:lowercase; +.entry-content .repeat .photo { +float:none; +margin-right:1px; +position:relative; +top:4px; +left:0; } +.dialogbox { +position:absolute; +top:-4px; +right:29px; +z-index:9; +min-width:199px; +float:none; +background-color:#FFF; +padding:11px; +border-radius:7px; +-moz-border-radius:7px; +-webkit-border-radius:7px; +border-style:solid; +border-width:1px; +border-color:#DDDDDD; +-moz-box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7); +} +.dialogbox legend { +display:block !important; +margin-right:18px; +} -.notice-data { +.dialogbox button.close { position:absolute; -top:18px; -right:0; -min-height:50px; -margin-bottom:4px; -} -.notice .entry-content .notice-data dt { -display:none; +right:3px; +top:3px; } -.notice-data a { -display:block; -outline:none; +.dialogbox .submit_dialogbox { +text-indent:0; +font-weight:bold; } .notice-options { -padding-left:2%; -float:left; +position:relative; font-size:0.95em; -width:16px; +width:113px; float:right; +margin-right:4px; } -.notices li:hover div.notice-options { -display:block; -} - .notice-options a { float:left; } -.notice-options .notice_delete, .notice-options .notice_reply, +.notice-options .form_repeat, .notice-options .form_favor, -.notice-options .form_disfavor { -position:absolute; +.notice-options .form_disfavor, +.notice-options .repeated { +float:left; +margin-left:14.2%; } .notice-options .form_favor, .notice-options .form_disfavor { -top:7px; -right:7px; -} -.notice-options .notice_reply { -top:30px; -right:7px; -} -.notice-options .notice_delete { -top:47px; -right:7px; +margin-left:0; } - .notice-options input, -.notice-options a { +.notice-options a, +.notice-options .repeated { text-indent:-9999px; outline:none; } - -.notice-options .notice_reply, .notice-options input.submit { display:block; border:0; @@ -987,29 +1099,34 @@ border:0; .notice-options .notice_reply, .notice-options .notice_delete { text-decoration:none; -padding-left:16px; } - -.notice-options .notice_reply .notice_id { -display:none; +.notice .notice-options .notice_delete { +float:right; } - .notice-options form input.submit { width:16px; -padding:2px 0; +height:16px; +padding:0; +border-radius:0; +-moz-border-radius:0; +-webkit-border-radius:0; } - -.notice-options .notice_delete dt, +.notice-options .form_repeat legend, .notice-options .form_favor legend, .notice-options .form_disfavor legend { display:none; } -.notice-options .notice_delete fieldset, +.notice-options .form_repeat fieldset, .notice-options .form_favor fieldset, .notice-options .form_disfavor fieldset { border:0; padding:0; } +.notice-options a, +.notice-options .repeated { +width:16px; +height:16px; +} .notice .attachment { position:relative; @@ -1335,6 +1452,33 @@ clear:both; margin-bottom:0; } +#settings_design_background-image img { +max-width:480px; +max-height:480px; +} + +#settings_design_color .form_data, +#color-picker { +float:left; +} +#settings_design_color .form_data { +width:400px; +margin-right:1%; +} + +#settings_design_color .form_data li { +width:33%; +} +#settings_design_color .form_data label { +float:none; +display:block; +} +#settings_design_color .form_data .swatch { +padding:11px; +margin-left:0; +width:auto; +} + .instructions ul { list-style-position:inside; } @@ -1348,6 +1492,15 @@ display:none; .guide { clear:both; } +#bookmarklet address { +display:none; +} +#bookmarklet .form_notice { +width:auto; +} +#bookmarklet #wrap { +min-width:0; +} #public.user_in #content, #groups.user_in #content, @@ -1363,8 +1516,9 @@ clear:both; #subscriptions.user_in #content, #subscribers.user_in #content, #showgroup.user_in #content, -#conversation.user_in #content { -padding-top:160px; +#conversation.user_in #content, +#attachment.user_in #content { +padding-top:12.5em; } #profilesettings #form_notice, @@ -1390,10 +1544,24 @@ padding-top:160px; #register #form_notice, #shownotice #form_notice, #confirmaddress #form_notice, -#tag #form_notice { +#tag #form_notice, +#siteadminpanel #form_notice, +#designadminpanel #form_notice, +#useradminpanel #form_notice, +#pathsadminpanel #form_notice, +#adminprofileflag #form_notice { display:none; } +#public #core, +#showstream #core { +margin-top:10em; +} +#public.user_in #core, +#showstream.user_in #core { +margin-top:0; +} + #jOverlayContent #core #content { padding-top:11px; } @@ -1432,43 +1600,172 @@ border-color:#ddd; background:none; } + +.form_notice label[for=notice_data-attach], +#export_data li a.rss, +#export_data li a.atom, +#export_data li a.foaf, +.entity_edit a, +.entity_send-a-message a, +.entity_nudge p, +.form_user_nudge input.submit, +.form_user_block input.submit, +.form_user_unblock input.submit, +.form_group_block input.submit, +.form_group_unblock input.submit, +.form_make_admin input.submit, +.notice .attachment, +.notice-options .notice_reply, +.notice-options form.form_favor input.submit, +.notice-options form.form_disfavor input.submit, +.notice-options .notice_delete, +.notice-options form.form_repeat input.submit, +#new_group a, +.pagination .nav_prev a, +.pagination .nav_next a, +button.close, +.form_group_leave input.submit, +.form_user_unsubscribe input.submit, +.form_group_join input.submit, +.form_user_subscribe input.submit, +.entity_subscribe a, +.entity_moderation p, +.entity_sandbox input.submit, +.entity_silence input.submit, +.entity_delete input.submit, +.notice-options .repeated, +.form_notice a#notice_data-geo_name, +.form_notice label[for=notice_data-geo], +button.minimize { +background-image:url(../../base/images/icons/icons-01.gif); +background-repeat:no-repeat; +background-color:transparent; +} + +#wrap form.processing input.submit, +.entity_actions a.processing { +background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%; +cursor:wait; +text-indent:-9999px; +outline:none; +} +.processing { +background-image:url(../../base/images/icons/icon_processing.gif); +background-repeat:no-repeat; +background-position:47% 47%; +} + +button.close { +background-position:0 -1120px; +} +button.minimize { +background-position:0 -1912px; +} + input.submit, -#form_notice.warning #notice_text-count, -#nav_register a, +.form_notice.warning #notice_text-count, .form_settings .form_note, -.entity_remote_subscribe { -background-color:#9BB43E; +.entity_actions a, +.entity_actions input, +.entity_moderation p, +button { +box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +} +.entity_actions a, +.entity_actions input, +.entity_actions p { +border-color:transparent; +background-color:transparent; } - input:focus, textarea:focus, select:focus, -#form_notice.warning #notice_data-text { +.form_notice.warning #notice_data-text, +.form_notice.warning #notice_text-count, +.form_settings .form_note { border-color:#9BB43E; } +input.submit { +color:#FFFFFF; +} +.entity_actions a, +.entity_actions input, +.entity_actions p { +border-color:transparent; +background-color:transparent; +} +input:focus, textarea:focus, select:focus, +.form_notice.warning #notice_data-text, +.form_notice.warning #notice_text-count, +.form_settings .form_note { +border-color:#9BB43E; +} +input.submit { +color:#FFFFFF; +} +.entity_actions input.submit { +border-color:transparent; +text-shadow:none; +} +.dialogbox .submit_dialogbox, input.submit, -#nav_register a, -.entity_remote_subscribe { -color:#fff; +.form_notice input.submit { +background:#AAAAAA url(../../base/images/illustrations/illu_pattern-01.png) 0 0 repeat-x; +text-shadow:0 1px 0 #FFFFFF; +color:#000000; +border-color:#AAAAAA; +border-top-color:#CCCCCC; +border-left-color:#CCCCCC; +} +.dialogbox .submit_dialogbox:hover, +input.submit:hover { +background-position:0 -5px; +} +.dialogbox .submit_dialogbox:focus, +input.submit:focus { +background-position:0 -15px; +box-shadow:3px 3px 3px rgba(194, 194, 194, 0.1); +-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.1); +-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.1); +text-shadow:none; +} + +.form_notice span#notice_data-geo_name { +background-position:0 47%; +} +.form_notice a#notice_data-geo_name { +background-position:0 -1711px; +} +.form_notice label[for=notice_data-geo] { +background-position:0 -1780px; +} +.form_notice label[for=notice_data-geo].checked { +background-position:0 -1846px; } a, -div.notice-options input, -.form_user_block input.submit, -.form_user_unblock input.submit, -.entity_send-a-message a, -.form_user_nudge input.submit, -.entity_nudge p, -.form_settings input.form_action-primary { +.form_settings input.form_action-primary, +.notice-options input, +.entity_actions a, +.entity_actions input, +.entity_moderation p { color:#0084B4; } .notice, .profile { +border-top-color:#CEE1E9; +} +.notice, +.profile { border-top-color:#DDFFCC; } .section .profile { border-top-color:#87B4C8; } - +.mark-top { +border-color:#AAAAAA; +} #aside_primary { background-color:#DDFFCC; @@ -1496,11 +1793,13 @@ text-indent:-9999px; #content, #site_nav_local_views a, #aside_primary { -border-color:#fff; +border-color:#FFFFFF; } #content, -#site_nav_local_views .current a { -background-color:#fff; +#site_nav_local_views .current a, +.entity_send-a-message .form_notice, +.entity_moderation:hover ul { +background-color:#FFFFFF; } #site_nav_local_views a { @@ -1535,77 +1834,97 @@ background-repeat:no-repeat; background-position:0 45%; } #export_data li a.rss { -background-image:url(../../base/images/icons/icon_rss.png); +background-position:0 -130px; } #export_data li a.atom { -background-image:url(../../base/images/icons/icon_atom.png); +background-position:0 -64px; } #export_data li a.foaf { -background-image:url(../../base/images/icons/icon_foaf.gif); +background-position:0 1px; } -.entity_edit a, -.entity_send-a-message a, -.form_user_nudge input.submit, -.form_user_block input.submit, -.form_user_unblock input.submit, -.entity_nudge p { -background-position: 0 40%; -background-repeat: no-repeat; -background-color:transparent; -} .form_group_join input.submit, -.form_group_leave input.submit +.form_group_leave input.submit, .form_user_subscribe input.submit, +.form_user_unsubscribe input.submit, +.entity_subscribe a { +background-color:#AAAAAA; +color:#FFFFFF; +} +.form_group_leave input.submit, .form_user_unsubscribe input.submit { -background-color:#9BB43E; -color:#fff; +background-position:5px -1246px; } -.form_user_unsubscribe input.submit, -.form_group_leave input.submit { -background-color:#87B4C8; +.form_group_join input.submit, +.form_user_subscribe input.submit, +.entity_subscribe a { +background-position:5px -1181px; } .entity_edit a { -background-image:url(../images/icons/twotone/green/edit.gif); +background-position: 5px -718px; } .entity_send-a-message a { -background-image:url(../images/icons/twotone/green/quote.gif); +background-position: 5px -852px; } +.entity_send-a-message .form_notice, +.entity_moderation:hover ul { +box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7); +-moz-box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7); +-webkit-box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7); +} + .entity_nudge p, .form_user_nudge input.submit { -background-image:url(../images/icons/twotone/green/mail.gif); +background-position: 5px -785px; } .form_user_block input.submit, -.form_user_unblock input.submit { -background-image:url(../images/icons/twotone/green/shield.gif); +.form_user_unblock input.submit, +.form_group_block input.submit, +.form_group_unblock input.submit { +background-position: 5px -918px; +} +.form_make_admin input.submit { +background-position: 5px -983px; +} +.entity_moderation p { +background-position: 5px -1313px; +} +.entity_sandbox input.submit { +background-position: 5px -1380px; +} +.entity_silence input.submit { +background-position: 5px -1445px; +} +.entity_delete input.submit { +background-position: 5px -1511px; } - /* NOTICES */ .notice .attachment { -background:transparent url(../../base/images/icons/twotone/green/clip-02.gif) no-repeat 0 45%; +background-position:0 -394px; } #attachments .attachment { background:none; } - -.notice-options .notice_reply, -.notice-options form input.submit { -background-color:transparent; -} .notice-options .notice_reply { -background:transparent url(../images/icons/icon_reply.gif) no-repeat 0 45%; +background-position:0 -592px; } .notice-options form.form_favor input.submit { -background:transparent url(../images/icons/icon_favourite.gif) no-repeat 0 45%; +background-position:0 -460px; } .notice-options form.form_disfavor input.submit { -background:transparent url(../images/icons/icon_disfavourite.gif) no-repeat 0 45%; +background-position:0 -526px; } .notice-options .notice_delete { -background:transparent url(../images/icons/icon_trash.gif) no-repeat 0 45%; +background-position:0 -658px; +} +.notice-options form.form_repeat input.submit { +background-position:0 -1582px; +} +.notice-options .repeated { +background-position:0 -1648px; } .notices div.entry-content, @@ -1616,19 +1935,34 @@ opacity:0.4; .notices li:hover div.notice-options { opacity:1; } +.opaque { +opacity:1 !important; +} .notices .notices { -background-color:rgba(200, 200, 200, 0.01); +background-color:rgba(200, 200, 200, 0.050); } .notices .notices .notices { -background-color:rgba(200, 200, 200, 0.02); +background-color:rgba(200, 200, 200, 0.100); } .notices .notices .notices .notices { -background-color:rgba(200, 200, 200, 0.03); +background-color:rgba(200, 200, 200, 0.150); } .notices .notices .notices .notices .notices { -background-color:rgba(200, 200, 200, 0.04); +background-color:rgba(200, 200, 200, 0.300); +} +.notice-options a, +.notice-options input { +font-family:sans-serif; +box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +} +#content .notices li:hover { +background-color:rgba(240, 240, 240, 0.2); +} +#conversation .notices li:hover { +background-color:transparent; } - div.entry-content { color:#333; @@ -1647,21 +1981,34 @@ background-color:transparent; #new_group a { -background:transparent url(../../base/images/icons/twotone/green/news.gif) no-repeat 0 45%; +background-position:0 -1054px; } .pagination .nav_prev a, .pagination .nav_next a { background-repeat:no-repeat; -border-color:#DDFFCC; +box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); +-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); } .pagination .nav_prev a { -background-image:url(../../base/images/icons/twotone/green/arrow-left.gif); -background-position:10% 45%; +background-position:10% -187px; } .pagination .nav_next a { -background-image:url(../../base/images/icons/twotone/green/arrow-right.gif); -background-position:90% 45%; +background-position:105% -252px; +} +.pagination .nav .processing { +background-image:url(../../base/images/icons/icon_processing.gif); +box-shadow:none; +-moz-box-shadow:none; +-webkit-box-shadow:none; +outline:none; +} +.pagination .nav_next a.processing { +background-position:90% 47%; +} +.pagination .nav_prev a.processing { +background-position:10% 47%; } @@ -1685,15 +2032,6 @@ border-color:#FFFF00; #form_notice .form_note { color:#CCC; } -input.submit { -background-color:#eee; -color:#666; -} - -.notices li.hover { -background-color:#F7F7F7; -} - .notice div.entry-content, .notice div.entry-content a { @@ -1719,12 +2057,12 @@ border-color:transparent; color:#4C4C4C; } #site_nav_local_views .current { -border-left-color:#fff; +border-left-color:#FFFFFF; } #site_nav_local_views .current a, #site_nav_global_primary, #footer { -background-color:#fff; +background-color:#FFFFFF; } diff --git a/theme/default/css/display.css b/theme/default/css/display.css index 50209bfd3..2360976e5 100644 --- a/theme/default/css/display.css +++ b/theme/default/css/display.css @@ -111,6 +111,19 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.1); text-shadow:none; } +.form_notice span#notice_data-geo_name { +background-position:0 47%; +} +.form_notice a#notice_data-geo_name { +background-position:0 -1711px; +} +.form_notice label[for=notice_data-geo] { +background-position:0 -1780px; +} +.form_notice label[for=notice_data-geo].checked { +background-position:0 -1846px; +} + a, .form_settings input.form_action-primary, .notice-options input, @@ -121,7 +134,8 @@ color:#002FA7; } .notice, -.profile { +.profile, +#content tbody tr { border-top-color:#C8D1D5; } .mark-top { @@ -177,7 +191,10 @@ button.close, .entity_sandbox input.submit, .entity_silence input.submit, .entity_delete input.submit, -.notice-options .repeated { +.notice-options .repeated, +.form_notice a#notice_data-geo_name, +.form_notice label[for=notice_data-geo], +button.minimize { background-image:url(../../base/images/icons/icons-01.gif); background-repeat:no-repeat; background-color:transparent; @@ -239,6 +256,9 @@ background-color:#EFF3DC; button.close { background-position:0 -1120px; } +button.minimize { +background-position:0 -1912px; +} #anon_notice { background-color:#87B4C8; @@ -364,7 +384,8 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); -moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); -webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); } -#content .notices li:hover { +#content .notices li:hover, +#content tbody tr:hover { background-color:rgba(240, 240, 240, 0.2); } #conversation .notices li:hover { diff --git a/theme/identica/css/display.css b/theme/identica/css/display.css index e86ee2437..91af1d8ec 100644 --- a/theme/identica/css/display.css +++ b/theme/identica/css/display.css @@ -111,6 +111,19 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.1); text-shadow:none; } +.form_notice span#notice_data-geo_name { +background-position:0 47%; +} +.form_notice a#notice_data-geo_name { +background-position:0 -1711px; +} +.form_notice label[for=notice_data-geo] { +background-position:0 -1780px; +} +.form_notice label[for=notice_data-geo].checked { +background-position:0 -1846px; +} + a, .form_settings input.form_action-primary, .notice-options input, @@ -121,7 +134,8 @@ color:#002FA7; } .notice, -.profile { +.profile, +#content tbody tr { border-top-color:#CEE1E9; } .mark-top { @@ -177,7 +191,10 @@ button.close, .entity_sandbox input.submit, .entity_silence input.submit, .entity_delete input.submit, -.notice-options .repeated { +.notice-options .repeated, +.form_notice a#notice_data-geo_name, +.form_notice label[for=notice_data-geo], +button.minimize { background-image:url(../../base/images/icons/icons-01.gif); background-repeat:no-repeat; background-color:transparent; @@ -238,6 +255,9 @@ background-color:#EFF3DC; button.close { background-position:0 -1120px; } +button.minimize { +background-position:0 -1912px; +} #anon_notice { background-color:#87B4C8; @@ -363,7 +383,8 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); -moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); -webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3); } -#content .notices li:hover { +#content .notices li:hover, +#content tbody tr:hover { background-color:rgba(240, 240, 240, 0.2); } #conversation .notices li:hover { |