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

This commit is contained in:
Zach Copley 2010-02-15 21:14:01 +00:00
commit 82033b3773
147 changed files with 6498 additions and 3013 deletions

View File

@ -100,11 +100,11 @@ class ApiTimelineFavoritesAction extends ApiBareAuthAction
function showTimeline() function showTimeline()
{ {
$profile = $this->user->getProfile(); $profile = $this->user->getProfile();
$avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE);
$sitename = common_config('site', 'name'); $sitename = common_config('site', 'name');
$title = sprintf( $title = sprintf(
_('%1$s / Favorites from %2$s'), _('%1$s / Favorites from %2$s'),
$sitename, $sitename,
$this->user->nickname $this->user->nickname
@ -112,32 +112,69 @@ class ApiTimelineFavoritesAction extends ApiBareAuthAction
$taguribase = common_config('integration', 'taguri'); $taguribase = common_config('integration', 'taguri');
$id = "tag:$taguribase:Favorites:" . $this->user->id; $id = "tag:$taguribase:Favorites:" . $this->user->id;
$link = common_local_url(
'favorites', $subtitle = sprintf(
array('nickname' => $this->user->nickname)
);
$subtitle = sprintf(
_('%1$s updates favorited by %2$s / %2$s.'), _('%1$s updates favorited by %2$s / %2$s.'),
$sitename, $sitename,
$profile->getBestName(), $profile->getBestName(),
$this->user->nickname $this->user->nickname
); );
$logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); $logo = !empty($avatar)
? $avatar->displayUrl()
: Avatar::defaultImage(AVATAR_PROFILE_SIZE);
switch($this->format) { switch($this->format) {
case 'xml': case 'xml':
$this->showXmlTimeline($this->notices); $this->showXmlTimeline($this->notices);
break; break;
case 'rss': case 'rss':
$this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); $link = common_local_url(
'showfavorites',
array('nickname' => $this->user->nickname)
);
$this->showRssTimeline(
$this->notices,
$title,
$link,
$subtitle,
null,
$logo
);
break; break;
case 'atom': case 'atom':
$selfuri = common_root_url() .
ltrim($_SERVER['QUERY_STRING'], 'p='); header('Content-Type: application/atom+xml; charset=utf-8');
$this->showAtomTimeline(
$this->notices, $title, $id, $link, $subtitle, $atom = new AtomNoticeFeed();
null, $selfuri, $logo
$atom->setId($id);
$atom->setTitle($title);
$atom->setSubtitle($subtitle);
$atom->setLogo($logo);
$atom->setUpdated('now');
$atom->addLink(
common_local_url(
'showfavorites',
array('nickname' => $this->user->nickname)
)
); );
$id = $this->arg('id');
$aargs = array('format' => 'atom');
if (!empty($id)) {
$aargs['id'] = $id;
}
$atom->addLink(
$this->getSelfUri('ApiTimelineFavorites', $aargs),
array('rel' => 'self', 'type' => 'application/atom+xml')
);
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);

View File

@ -114,39 +114,71 @@ class ApiTimelineFriendsAction extends ApiBareAuthAction
$title = sprintf(_("%s and friends"), $this->user->nickname); $title = sprintf(_("%s and friends"), $this->user->nickname);
$taguribase = common_config('integration', 'taguri'); $taguribase = common_config('integration', 'taguri');
$id = "tag:$taguribase:FriendsTimeline:" . $this->user->id; $id = "tag:$taguribase:FriendsTimeline:" . $this->user->id;
$link = common_local_url(
'all', array('nickname' => $this->user->nickname) $subtitle = sprintf(
); _('Updates from %1$s and friends on %2$s!'),
$subtitle = sprintf( $this->user->nickname, $sitename
_('Updates from %1$s and friends on %2$s!'), );
$this->user->nickname, $sitename
); $logo = (!empty($avatar))
$logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); ? $avatar->displayUrl()
: Avatar::defaultImage(AVATAR_PROFILE_SIZE);
switch($this->format) { switch($this->format) {
case 'xml': case 'xml':
$this->showXmlTimeline($this->notices); $this->showXmlTimeline($this->notices);
break; break;
case 'rss': case 'rss':
$this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo);
$link = common_local_url(
'all', array(
'nickname' => $this->user->nickname
)
);
$this->showRssTimeline(
$this->notices,
$title,
$link,
$subtitle,
null,
$logo
);
break; break;
case 'atom': case 'atom':
$target_id = $this->arg('id'); header('Content-Type: application/atom+xml; charset=utf-8');
if (isset($target_id)) { $atom = new AtomNoticeFeed();
$selfuri = common_root_url() .
'api/statuses/friends_timeline/' . $atom->setId($id);
$target_id . '.atom'; $atom->setTitle($title);
} else { $atom->setSubtitle($subtitle);
$selfuri = common_root_url() . $atom->setLogo($logo);
'api/statuses/friends_timeline.atom'; $atom->setUpdated('now');
$atom->addLink(
common_local_url(
'all',
array('nickname' => $this->user->nickname)
)
);
$id = $this->arg('id');
$aargs = array('format' => 'atom');
if (!empty($id)) {
$aargs['id'] = $id;
} }
$this->showAtomTimeline( $atom->addLink(
$this->notices, $title, $id, $link, $this->getSelfUri('ApiTimelineFriends', $aargs),
$subtitle, null, $selfuri, $logo array('rel' => 'self', 'type' => 'application/atom+xml')
); );
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);

View File

@ -109,38 +109,70 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction
$title = sprintf(_("%s timeline"), $this->group->nickname); $title = sprintf(_("%s timeline"), $this->group->nickname);
$taguribase = common_config('integration', 'taguri'); $taguribase = common_config('integration', 'taguri');
$id = "tag:$taguribase:GroupTimeline:" . $this->group->id; $id = "tag:$taguribase:GroupTimeline:" . $this->group->id;
$link = common_local_url(
'showgroup',
array('nickname' => $this->group->nickname)
);
$subtitle = sprintf( $subtitle = sprintf(
_('Updates from %1$s on %2$s!'), _('Updates from %1$s on %2$s!'),
$this->group->nickname, $this->group->nickname,
$sitename $sitename
); );
$logo = ($avatar) ? $avatar : User_group::defaultLogo(AVATAR_PROFILE_SIZE);
$logo = ($avatar) ? $avatar : User_group::defaultLogo(AVATAR_PROFILE_SIZE);
switch($this->format) { switch($this->format) {
case 'xml': case 'xml':
$this->showXmlTimeline($this->notices); $this->showXmlTimeline($this->notices);
break; break;
case 'rss': case 'rss':
$this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); $this->showRssTimeline(
break;
case 'atom':
$selfuri = common_root_url() .
'api/statusnet/groups/timeline/' .
$this->group->nickname . '.atom';
$this->showAtomTimeline(
$this->notices, $this->notices,
$title, $title,
$id, $this->group->homeUrl(),
$link,
$subtitle, $subtitle,
null, null,
$selfuri,
$logo $logo
); );
break;
case 'atom':
header('Content-Type: application/atom+xml; charset=utf-8');
try {
$atom = new AtomNoticeFeed();
$atom->setId($id);
$atom->setTitle($title);
$atom->setSubtitle($subtitle);
$atom->setLogo($logo);
$atom->setUpdated('now');
$atom->addAuthorRaw($this->group->asAtomAuthor());
$atom->setActivitySubject($this->group->asActivitySubject());
$atom->addLink($this->group->homeUrl());
$id = $this->arg('id');
$aargs = array('format' => 'atom');
if (!empty($id)) {
$aargs['id'] = $id;
}
$atom->addLink(
$this->getSelfUri('ApiTimelineGroup', $aargs),
array('rel' => 'self', 'type' => 'application/atom+xml')
);
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
} catch (Atom10FeedException $e) {
$this->serverError(
'Could not generate feed for group - ' . $e->getMessage()
);
return;
}
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);

View File

@ -115,39 +115,67 @@ class ApiTimelineHomeAction extends ApiBareAuthAction
$title = sprintf(_("%s and friends"), $this->user->nickname); $title = sprintf(_("%s and friends"), $this->user->nickname);
$taguribase = common_config('integration', 'taguri'); $taguribase = common_config('integration', 'taguri');
$id = "tag:$taguribase:HomeTimeline:" . $this->user->id; $id = "tag:$taguribase:HomeTimeline:" . $this->user->id;
$link = common_local_url(
'all', array('nickname' => $this->user->nickname)
);
$subtitle = sprintf( $subtitle = sprintf(
_('Updates from %1$s and friends on %2$s!'), _('Updates from %1$s and friends on %2$s!'),
$this->user->nickname, $sitename $this->user->nickname, $sitename
); );
$logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE);
$logo = (!empty($avatar))
? $avatar->displayUrl()
: Avatar::defaultImage(AVATAR_PROFILE_SIZE);
switch($this->format) { switch($this->format) {
case 'xml': case 'xml':
$this->showXmlTimeline($this->notices); $this->showXmlTimeline($this->notices);
break; break;
case 'rss': case 'rss':
$this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); $link = common_local_url(
'all',
array('nickname' => $this->user->nickname)
);
$this->showRssTimeline(
$this->notices,
$title,
$link,
$subtitle,
null,
$logo
);
break; break;
case 'atom': case 'atom':
$target_id = $this->arg('id'); header('Content-Type: application/atom+xml; charset=utf-8');
if (isset($target_id)) { $atom = new AtomNoticeFeed();
$selfuri = common_root_url() .
'api/statuses/home_timeline/' . $atom->setId($id);
$target_id . '.atom'; $atom->setTitle($title);
} else { $atom->setSubtitle($subtitle);
$selfuri = common_root_url() . $atom->setLogo($logo);
'api/statuses/home_timeline.atom'; $atom->setUpdated('now');
$atom->addLink(
common_local_url(
'all',
array('nickname' => $this->user->nickname)
)
);
$id = $this->arg('id');
$aargs = array('format' => 'atom');
if (!empty($id)) {
$aargs['id'] = $id;
} }
$this->showAtomTimeline( $atom->addLink(
$this->notices, $title, $id, $link, $this->getSelfUri('ApiTimelineHome', $aargs),
$subtitle, null, $selfuri, $logo array('rel' => 'self', 'type' => 'application/atom+xml')
); );
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);

View File

@ -137,12 +137,36 @@ class ApiTimelineMentionsAction extends ApiBareAuthAction
$this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo);
break; break;
case 'atom': case 'atom':
$selfuri = common_root_url() .
ltrim($_SERVER['QUERY_STRING'], 'p='); $atom = new AtomNoticeFeed();
$this->showAtomTimeline(
$this->notices, $title, $id, $link, $subtitle, $atom->setId($id);
null, $selfuri, $logo $atom->setTitle($title);
$atom->setSubtitle($subtitle);
$atom->setLogo($logo);
$atom->setUpdated('now');
$atom->addLink(
common_local_url(
'replies',
array('nickname' => $this->user->nickname)
)
); );
$id = $this->arg('id');
$aargs = array('format' => 'atom');
if (!empty($id)) {
$aargs['id'] = $id;
}
$atom->addLink(
$this->getSelfUri('ApiTimelineMentions', $aargs),
array('rel' => 'self', 'type' => 'application/atom+xml')
);
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);

View File

@ -75,6 +75,10 @@ class ApiTimelinePublicAction extends ApiPrivateAuthAction
$this->notices = $this->getNotices(); $this->notices = $this->getNotices();
if ($this->since) {
throw new ServerException("since parameter is disabled for performance; use since_id", 403);
}
return true; return true;
} }
@ -118,11 +122,28 @@ class ApiTimelinePublicAction extends ApiPrivateAuthAction
$this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $sitelogo); $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $sitelogo);
break; break;
case 'atom': case 'atom':
$selfuri = common_root_url() . 'api/statuses/public_timeline.atom';
$this->showAtomTimeline( $atom = new AtomNoticeFeed();
$this->notices, $title, $id, $link,
$subtitle, null, $selfuri, $sitelogo $atom->setId($id);
$atom->setTitle($title);
$atom->setSubtitle($subtitle);
$atom->setLogo($sitelogo);
$atom->setUpdated('now');
$atom->addLink(common_local_url('public'));
$atom->addLink(
$this->getSelfUri(
'ApiTimelinePublic', array('format' => 'atom')
),
array('rel' => 'self', 'type' => 'application/atom+xml')
); );
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);
@ -145,7 +166,7 @@ class ApiTimelinePublicAction extends ApiPrivateAuthAction
$notice = Notice::publicStream( $notice = Notice::publicStream(
($this->page - 1) * $this->count, $this->count, $this->since_id, ($this->page - 1) * $this->count, $this->count, $this->since_id,
$this->max_id, $this->since $this->max_id
); );
while ($notice->fetch()) { while ($notice->fetch()) {

View File

@ -99,6 +99,8 @@ class ApiTimelineRetweetsOfMeAction extends ApiAuthAction
$strm = $this->auth_user->repeatsOfMe($offset, $limit, $this->since_id, $this->max_id); $strm = $this->auth_user->repeatsOfMe($offset, $limit, $this->since_id, $this->max_id);
common_debug(var_export($strm, true));
switch ($this->format) { switch ($this->format) {
case 'xml': case 'xml':
$this->showXmlTimeline($strm); $this->showXmlTimeline($strm);
@ -112,10 +114,38 @@ class ApiTimelineRetweetsOfMeAction extends ApiAuthAction
$title = sprintf(_("Repeats of %s"), $this->auth_user->nickname); $title = sprintf(_("Repeats of %s"), $this->auth_user->nickname);
$taguribase = common_config('integration', 'taguri'); $taguribase = common_config('integration', 'taguri');
$id = "tag:$taguribase:RepeatsOfMe:" . $this->auth_user->id; $id = "tag:$taguribase:RepeatsOfMe:" . $this->auth_user->id;
$link = common_local_url('showstream',
array('nickname' => $this->auth_user->nickname));
$this->showAtomTimeline($strm, $title, $id, $link); header('Content-Type: application/atom+xml; charset=utf-8');
$atom = new AtomNoticeFeed();
$atom->setId($id);
$atom->setTitle($title);
$atom->setSubtitle($subtitle);
$atom->setUpdated('now');
$atom->addLink(
common_local_url(
'showstream',
array('nickname' => $this->auth_user->nickname)
)
);
$id = $this->arg('id');
$aargs = array('format' => 'atom');
if (!empty($id)) {
$aargs['id'] = $id;
}
$atom->addLink(
$this->getSelfUri('ApiTimelineRetweetsOfMe', $aargs),
array('rel' => 'self', 'type' => 'application/atom+xml')
);
$atom->addEntryFromNotices($strm);
$this->raw($atom->getString());
break; break;
default: default:

View File

@ -100,10 +100,6 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
$sitename = common_config('site', 'name'); $sitename = common_config('site', 'name');
$sitelogo = (common_config('site', 'logo')) ? common_config('site', 'logo') : Theme::path('logo.png'); $sitelogo = (common_config('site', 'logo')) ? common_config('site', 'logo') : Theme::path('logo.png');
$title = sprintf(_("Notices tagged with %s"), $this->tag); $title = sprintf(_("Notices tagged with %s"), $this->tag);
$link = common_local_url(
'tag',
array('tag' => $this->tag)
);
$subtitle = sprintf( $subtitle = sprintf(
_('Updates tagged with %1$s on %2$s!'), _('Updates tagged with %1$s on %2$s!'),
$this->tag, $this->tag,
@ -117,22 +113,51 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
$this->showXmlTimeline($this->notices); $this->showXmlTimeline($this->notices);
break; break;
case 'rss': case 'rss':
$this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $sitelogo); $link = common_local_url(
break; 'tag',
case 'atom': array('tag' => $this->tag)
$selfuri = common_root_url() . );
'api/statusnet/tags/timeline/' . $this->showRssTimeline(
$this->tag . '.atom';
$this->showAtomTimeline(
$this->notices, $this->notices,
$title, $title,
$id,
$link, $link,
$subtitle, $subtitle,
null, null,
$selfuri,
$sitelogo $sitelogo
); );
break;
case 'atom':
header('Content-Type: application/atom+xml; charset=utf-8');
$atom = new AtomNoticeFeed();
$atom->setId($id);
$atom->setTitle($title);
$atom->setSubtitle($subtitle);
$atom->setLogo($logo);
$atom->setUpdated('now');
$atom->addLink(
common_local_url(
'tag',
array('tag' => $this->tag)
)
);
$aargs = array('format' => 'atom');
if (!empty($this->tag)) {
$aargs['tag'] = $this->tag;
}
$atom->addLink(
$this->getSelfUri('ApiTimelineTag', $aargs),
array('rel' => 'self', 'type' => 'application/atom+xml')
);
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);

View File

@ -145,18 +145,47 @@ class ApiTimelineUserAction extends ApiBareAuthAction
); );
break; break;
case 'atom': case 'atom':
if (isset($apidata['api_arg'])) {
$selfuri = common_root_url() . header('Content-Type: application/atom+xml; charset=utf-8');
'api/statuses/user_timeline/' .
$apidata['api_arg'] . '.atom'; $atom = new AtomNoticeFeed();
} else {
$selfuri = common_root_url() . $atom->setId($id);
'api/statuses/user_timeline.atom'; $atom->setTitle($title);
} $atom->setSubtitle($subtitle);
$this->showAtomTimeline( $atom->setLogo($logo);
$this->notices, $title, $id, $link, $atom->setUpdated('now');
$subtitle, $suplink, $selfuri, $logo
$atom->addLink(
common_local_url(
'showstream',
array('nickname' => $this->user->nickname)
)
); );
$id = $this->arg('id');
$aargs = array('format' => 'atom');
if (!empty($id)) {
$aargs['id'] = $id;
}
$atom->addLink(
$this->getSelfUri('ApiTimelineUser', $aargs),
array('rel' => 'self', 'type' => 'application/atom+xml')
);
$atom->addLink(
$suplink,
array(
'rel' => 'http://api.friendfeed.com/2008/03#sup',
'type' => 'application/json'
)
);
$atom->addEntryFromNotices($this->notices);
$this->raw($atom->getString());
break; break;
case 'json': case 'json':
$this->showJsonTimeline($this->notices); $this->showJsonTimeline($this->notices);

View File

@ -277,7 +277,7 @@ class EditApplicationAction extends OwnerDesignAction
function nameExists($name) function nameExists($name)
{ {
$newapp = Oauth_application::staticGet('name', $name); $newapp = Oauth_application::staticGet('name', $name);
if (!$newapp) { if (empty($newapp)) {
return false; return false;
} else { } else {
return $newapp->id != $this->app->id; return $newapp->id != $this->app->id;

View File

@ -192,7 +192,9 @@ class GroupMemberListItem extends ProfileListItem
{ {
$user = common_current_user(); $user = common_current_user();
if (!empty($user) && $user->id != $this->profile->id && $user->isAdmin($this->group) && if (!empty($user) &&
$user->id != $this->profile->id &&
($user->isAdmin($this->group) || $user->hasRight(Right::MAKEGROUPADMIN)) &&
!$this->profile->isAdmin($this->group)) { !$this->profile->isAdmin($this->group)) {
$this->out->elementStart('li', 'entity_make_admin'); $this->out->elementStart('li', 'entity_make_admin');
$maf = new MakeAdminForm($this->out, $this->profile, $this->group, $maf = new MakeAdminForm($this->out, $this->profile, $this->group,

View File

@ -87,7 +87,8 @@ class MakeadminAction extends Action
return false; return false;
} }
$user = common_current_user(); $user = common_current_user();
if (!$user->isAdmin($this->group)) { if (!$user->isAdmin($this->group) &&
!$user->hasRight(Right::MAKEGROUPADMIN)) {
$this->clientError(_('Only an admin can make another user an admin.'), 401); $this->clientError(_('Only an admin can make another user an admin.'), 401);
return false; return false;
} }

View File

@ -290,7 +290,7 @@ class NewApplicationAction extends OwnerDesignAction
function nameExists($name) function nameExists($name)
{ {
$app = Oauth_application::staticGet('name', $name); $app = Oauth_application::staticGet('name', $name);
return ($app !== false); return !empty($app);
} }
} }

View File

@ -330,13 +330,13 @@ class ShowgroupAction extends GroupDesignAction
new Feed(Feed::RSS2, new Feed(Feed::RSS2,
common_local_url('ApiTimelineGroup', common_local_url('ApiTimelineGroup',
array('format' => 'rss', array('format' => 'rss',
'id' => $this->group->nickname)), 'id' => $this->group->id)),
sprintf(_('Notice feed for %s group (RSS 2.0)'), sprintf(_('Notice feed for %s group (RSS 2.0)'),
$this->group->nickname)), $this->group->nickname)),
new Feed(Feed::ATOM, new Feed(Feed::ATOM,
common_local_url('ApiTimelineGroup', common_local_url('ApiTimelineGroup',
array('format' => 'atom', array('format' => 'atom',
'id' => $this->group->nickname)), 'id' => $this->group->id)),
sprintf(_('Notice feed for %s group (Atom)'), sprintf(_('Notice feed for %s group (Atom)'),
$this->group->nickname)), $this->group->nickname)),
new Feed(Feed::FOAF, new Feed(Feed::FOAF,

View File

@ -131,14 +131,14 @@ class ShowstreamAction extends ProfileAction
new Feed(Feed::RSS2, new Feed(Feed::RSS2,
common_local_url('ApiTimelineUser', common_local_url('ApiTimelineUser',
array( array(
'id' => $this->user->nickname, 'id' => $this->user->id,
'format' => 'rss')), 'format' => 'rss')),
sprintf(_('Notice feed for %s (RSS 2.0)'), sprintf(_('Notice feed for %s (RSS 2.0)'),
$this->user->nickname)), $this->user->nickname)),
new Feed(Feed::ATOM, new Feed(Feed::ATOM,
common_local_url('ApiTimelineUser', common_local_url('ApiTimelineUser',
array( array(
'id' => $this->user->nickname, 'id' => $this->user->id,
'format' => 'atom')), 'format' => 'atom')),
sprintf(_('Notice feed for %s (Atom)'), sprintf(_('Notice feed for %s (Atom)'),
$this->user->nickname)), $this->user->nickname)),

View File

@ -363,7 +363,7 @@ class Memcached_DataObject extends DB_DataObject
$cached[] = clone($inst); $cached[] = clone($inst);
} }
$inst->free(); $inst->free();
$c->set($ckey, $cached, MEMCACHE_COMPRESSED, $expiry); $c->set($ckey, $cached, Cache::COMPRESSED, $expiry);
return new ArrayWrapper($cached); return new ArrayWrapper($cached);
} }

View File

@ -22,4 +22,19 @@ class Nonce extends Memcached_DataObject
/* the code above is auto generated do not remove the tag below */ /* the code above is auto generated do not remove the tag below */
###END_AUTOCODE ###END_AUTOCODE
/**
* Compatibility hack for PHP 5.3
*
* The statusnet.links.ini entry cannot be read because "," is no longer
* allowed in key names when read by parse_ini_file().
*
* @return array
* @access public
*/
function links()
{
return array('consumer_key,token' => 'token:consumer_key,token');
}
} }

View File

@ -783,7 +783,7 @@ class Notice extends Memcached_DataObject
$result = $gi->insert(); $result = $gi->insert();
if (!result) { if (!$result) {
common_log_db_error($gi, 'INSERT', __FILE__); common_log_db_error($gi, 'INSERT', __FILE__);
throw new ServerException(_('Problem saving group inbox.')); throw new ServerException(_('Problem saving group inbox.'));
} }
@ -917,7 +917,7 @@ class Notice extends Memcached_DataObject
/** /**
* Same calculation as saveGroups but without the saving * Same calculation as saveGroups but without the saving
* @fixme merge the functions * @fixme merge the functions
* @return array of Group objects * @return array of Group_inbox objects
*/ */
function getGroups() function getGroups()
{ {
@ -957,7 +957,10 @@ class Notice extends Memcached_DataObject
if ($namespace) { if ($namespace) {
$attrs = array('xmlns' => 'http://www.w3.org/2005/Atom', $attrs = array('xmlns' => 'http://www.w3.org/2005/Atom',
'xmlns:thr' => 'http://purl.org/syndication/thread/1.0'); 'xmlns:thr' => 'http://purl.org/syndication/thread/1.0',
'xmlns:georss' => 'http://www.georss.org/georss',
'xmlns:activity' => 'http://activitystrea.ms/spec/1.0/',
'xmlns:ostatus' => 'http://ostatus.org/schema/1.0');
} else { } else {
$attrs = array(); $attrs = array();
} }
@ -983,11 +986,6 @@ class Notice extends Memcached_DataObject
$xs->element('icon', null, $profile->avatarUrl(AVATAR_PROFILE_SIZE)); $xs->element('icon', null, $profile->avatarUrl(AVATAR_PROFILE_SIZE));
} }
$xs->elementStart('author');
$xs->element('name', null, $profile->nickname);
$xs->element('uri', null, $profile->profileurl);
$xs->elementEnd('author');
if ($source) { if ($source) {
$xs->elementEnd('source'); $xs->elementEnd('source');
} }
@ -995,6 +993,9 @@ class Notice extends Memcached_DataObject
$xs->element('title', null, $this->content); $xs->element('title', null, $this->content);
$xs->element('summary', null, $this->content); $xs->element('summary', null, $this->content);
$xs->raw($profile->asAtomAuthor());
$xs->raw($profile->asActivityActor());
$xs->element('link', array('rel' => 'alternate', $xs->element('link', array('rel' => 'alternate',
'href' => $this->bestUrl())); 'href' => $this->bestUrl()));
@ -1014,6 +1015,43 @@ class Notice extends Memcached_DataObject
} }
} }
if (!empty($this->conversation)
&& $this->conversation != $this->id) {
$xs->element(
'link', array(
'rel' => 'ostatus:conversation',
'href' => common_local_url(
'conversation',
array('id' => $this->conversation)
)
)
);
}
$reply_ids = $this->getReplies();
foreach ($reply_ids as $id) {
$profile = Profile::staticGet('id', $id);
if (!empty($profile)) {
$xs->element(
'link', array(
'rel' => 'ostatus:attention',
'href' => $profile->getAcctUri()
)
);
}
}
if (!empty($this->repeat_of)) {
$repeat = Notice::staticGet('id', $this->repeat_of);
if (!empty($repeat)) {
$xs->element(
'ostatus:forward',
array('ref' => $repeat->uri, 'href' => $repeat->bestUrl())
);
}
}
$xs->element('content', array('type' => 'html'), $this->rendered); $xs->element('content', array('type' => 'html'), $this->rendered);
$tag = new Notice_tag(); $tag = new Notice_tag();
@ -1041,9 +1079,7 @@ class Notice extends Memcached_DataObject
} }
if (!empty($this->lat) && !empty($this->lon)) { if (!empty($this->lat) && !empty($this->lon)) {
$xs->elementStart('geo', array('xmlns:georss' => 'http://www.georss.org/georss'));
$xs->element('georss:point', null, $this->lat . ' ' . $this->lon); $xs->element('georss:point', null, $this->lat . ' ' . $this->lon);
$xs->elementEnd('geo');
} }
$xs->elementEnd('entry'); $xs->elementEnd('entry');
@ -1176,6 +1212,10 @@ class Notice extends Memcached_DataObject
// Figure out who that is. // Figure out who that is.
$sender = Profile::staticGet('id', $profile_id); $sender = Profile::staticGet('id', $profile_id);
if (empty($sender)) {
return null;
}
$recipient = common_relative_profile($sender, $nickname, common_sql_now()); $recipient = common_relative_profile($sender, $nickname, common_sql_now());
if (empty($recipient)) { if (empty($recipient)) {

View File

@ -716,6 +716,7 @@ class Profile extends Memcached_DataObject
switch ($right) switch ($right)
{ {
case Right::DELETEOTHERSNOTICE: case Right::DELETEOTHERSNOTICE:
case Right::MAKEGROUPADMIN:
case Right::SANDBOXUSER: case Right::SANDBOXUSER:
case Right::SILENCEUSER: case Right::SILENCEUSER:
case Right::DELETEUSER: case Right::DELETEUSER:
@ -753,4 +754,89 @@ class Profile extends Memcached_DataObject
return !empty($notice); return !empty($notice);
} }
/**
* Returns an XML string fragment with limited profile information
* as an Atom <author> element.
*
* Assumes that Atom has been previously set up as the base namespace.
*
* @return string
*/
function asAtomAuthor()
{
$xs = new XMLStringer(true);
$xs->elementStart('author');
$xs->element('name', null, $this->nickname);
$xs->element('uri', null, $this->profileurl);
$xs->elementEnd('author');
return $xs->getString();
}
/**
* Returns an XML string fragment with profile information as an
* Activity Streams <activity:actor> element.
*
* Assumes that 'activity' namespace has been previously defined.
*
* @return string
*/
function asActivityActor()
{
return $this->asActivityNoun('actor');
}
/**
* Returns an XML string fragment with profile information as an
* Activity Streams noun object with the given element type.
*
* Assumes that 'activity' namespace has been previously defined.
*
* @param string $element one of 'actor', 'subject', 'object', 'target'
* @return string
*/
function asActivityNoun($element)
{
$xs = new XMLStringer(true);
$xs->elementStart('activity:' . $element);
$xs->element(
'activity:object-type',
null,
'http://activitystrea.ms/schema/1.0/person'
);
$xs->element(
'id',
null,
common_local_url(
'userbyid',
array('id' => $this->id)
)
);
$xs->element('title', null, $this->getBestName());
$avatar = $this->getAvatar(AVATAR_PROFILE_SIZE);
$xs->element(
'link', array(
'type' => empty($avatar) ? 'image/png' : $avatar->mediatype,
'href' => empty($avatar)
? Avatar::defaultImage(AVATAR_PROFILE_SIZE)
: $avatar->displayUrl()
),
''
);
$xs->elementEnd('activity:' . $element);
return $xs->getString();
}
function getAcctUri()
{
return $this->nickname . '@' . common_config('site', 'server');
}
} }

View File

@ -49,12 +49,12 @@ class User_group extends Memcached_DataObject
array('id' => $this->id)); array('id' => $this->id));
} }
function getNotices($offset, $limit) function getNotices($offset, $limit, $since_id=null, $max_id=null)
{ {
$ids = Notice::stream(array($this, '_streamDirect'), $ids = Notice::stream(array($this, '_streamDirect'),
array(), array(),
'user_group:notice_ids:' . $this->id, 'user_group:notice_ids:' . $this->id,
$offset, $limit); $offset, $limit, $since_id, $max_id);
return Notice::getStreamByIds($ids); return Notice::getStreamByIds($ids);
} }
@ -355,6 +355,39 @@ class User_group extends Memcached_DataObject
return $xs->getString(); return $xs->getString();
} }
function asAtomAuthor()
{
$xs = new XMLStringer(true);
$xs->elementStart('author');
$xs->element('name', null, $this->nickname);
$xs->element('uri', null, $this->permalink());
$xs->elementEnd('author');
return $xs->getString();
}
function asActivitySubject()
{
$xs = new XMLStringer(true);
$xs->elementStart('activity:subject');
$xs->element('activity:object', null, 'http://activitystrea.ms/schema/1.0/group');
$xs->element('id', null, $this->permalink());
$xs->element('title', null, $this->getBestName());
$xs->element(
'link', array(
'rel' => 'avatar',
'href' => empty($this->homepage_logo)
? User_group::defaultLogo(AVATAR_PROFILE_SIZE)
: $this->homepage_logo
)
);
$xs->elementEnd('activity:subject');
return $xs->getString();
}
static function register($fields) { static function register($fields) {
// MAGICALLY put fields into current scope // MAGICALLY put fields into current scope

View File

@ -19,8 +19,11 @@ profile_id = profile:id
[token] [token]
consumer_key = consumer:consumer_key consumer_key = consumer:consumer_key
[nonce] ; Compatibility hack for PHP 5.3
consumer_key,token = token:consumer_key,token ; This entry has been moved to the class definition, as commas are no longer
; considered valid in keys, causing parse_ini_file() to reject the whole file.
;[nonce]
;consumer_key,token = token:consumer_key,token
[confirm_address] [confirm_address]
user_id = user:id user_id = user:id

View File

@ -356,42 +356,44 @@ var SN = { // StatusNet
}, },
NoticeRepeat: function() { NoticeRepeat: function() {
$('.form_repeat').live('click', function() { $('.form_repeat').live('click', function(e) {
SN.U.FormXHR($(this)); e.preventDefault();
SN.U.NoticeRepeatConfirmation($(this)); SN.U.NoticeRepeatConfirmation($(this));
return false; return false;
}); });
}, },
NoticeRepeatConfirmation: function(form) { NoticeRepeatConfirmation: function(form) {
function NRC() { var submit_i = form.find('.submit');
form.closest('.notice-options').addClass('opaque');
form.addClass('dialogbox');
form.append('<button class="close">&#215;</button>'); var submit = submit_i.clone();
form.find('button.close').click(function(){ submit
$(this).remove(); .addClass('submit_dialogbox')
.removeClass('submit');
form.append(submit);
submit.bind('click', function() { SN.U.FormXHR(form); return false; });
form.closest('.notice-options').removeClass('opaque'); submit_i.hide();
form.removeClass('dialogbox');
form.find('.submit_dialogbox').remove();
form.find('.submit').show();
return false; form
}); .addClass('dialogbox')
}; .append('<button class="close">&#215;</button>')
.closest('.notice-options')
.addClass('opaque');
form.find('.submit').bind('click', function(e) { form.find('button.close').click(function(){
e.preventDefault(); $(this).remove();
var submit = form.find('.submit').clone(); form
submit.addClass('submit_dialogbox'); .removeClass('dialogbox')
submit.removeClass('submit'); .closest('.notice-options')
form.append(submit); .removeClass('opaque');
$(this).hide(); form.find('.submit_dialogbox').remove();
form.find('.submit').show();
NRC(); return false;
}); });
}, },

View File

@ -77,6 +77,7 @@ class ApiAction extends Action
function prepare($args) function prepare($args)
{ {
StatusNet::setApi(true); // reduce exception reports to aid in debugging
parent::prepare($args); parent::prepare($args);
$this->format = $this->arg('format'); $this->format = $this->arg('format');
@ -1103,7 +1104,7 @@ class ApiAction extends Action
} }
} }
function serverError($msg, $code = 500, $content_type = 'json') function serverError($msg, $code = 500, $content_type = 'xml')
{ {
$action = $this->trimmed('action'); $action = $this->trimmed('action');
@ -1321,4 +1322,22 @@ class ApiAction extends Action
} }
} }
function getSelfUri($action, $aargs)
{
parse_str($_SERVER['QUERY_STRING'], $params);
$pstring = '';
if (!empty($params)) {
unset($params['p']);
$pstring = http_build_query($params);
}
$uri = common_local_url($action, $aargs);
if (!empty($pstring)) {
$uri .= '?' . $pstring;
}
return $uri;
}
} }

106
lib/atom10entry.php Normal file
View File

@ -0,0 +1,106 @@
<?php
/**
* StatusNet, the distributed open-source microblogging tool
*
* Class for building / manipulating an Atom entry in memory
*
* 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 Feed
* @package StatusNet
* @author Zach Copley <zach@status.net>
* @copyright 2010 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 Atom10EntryException extends Exception
{
}
/**
* Class for manipulating an Atom entry in memory. Get the entry as an XML
* string with Atom10Entry::getString().
*
* @category Feed
* @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 Atom10Entry extends XMLStringer
{
private $namespaces;
private $categories;
private $content;
private $contributors;
private $id;
private $links;
private $published;
private $rights;
private $source;
private $summary;
private $title;
function __construct($indent = true) {
parent::__construct($indent);
$this->namespaces = array();
}
function addNamespace($namespace, $uri)
{
$ns = array($namespace => $uri);
$this->namespaces = array_merge($this->namespaces, $ns);
}
function initEntry()
{
}
function endEntry()
{
}
/**
* Check that all required elements have been set, etc.
* Throws an Atom10EntryException if something's missing.
*
* @return void
*/
function validate
{
}
function getString()
{
$this->validate();
$this->initEntry();
$this->renderEntries();
$this->endEntry();
return $this->xw->outputMemory();
}
}

293
lib/atom10feed.php Normal file
View File

@ -0,0 +1,293 @@
<?php
/**
* StatusNet, the distributed open-source microblogging tool
*
* Class for building an Atom feed in memory
*
* 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 Feed
* @package StatusNet
* @author Zach Copley <zach@status.net>
* @copyright 2010 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 Atom10FeedException extends Exception
{
}
/**
* Class for building an Atom feed in memory. Get the finished doc
* as a string with Atom10Feed::getString().
*
* @category Feed
* @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 Atom10Feed extends XMLStringer
{
public $xw;
private $namespaces;
private $authors;
private $subject;
private $categories;
private $contributors;
private $generator;
private $icon;
private $links;
private $logo;
private $rights;
private $subtitle;
private $title;
private $published;
private $updated;
private $entries;
/**
* Constructor
*
* @param boolean $indent flag to turn indenting on or off
*
* @return void
*/
function __construct($indent = true) {
parent::__construct($indent);
$this->namespaces = array();
$this->authors = array();
$this->links = array();
$this->entries = array();
$this->addNamespace('xmlns', 'http://www.w3.org/2005/Atom');
}
/**
* Add another namespace to the feed
*
* @param string $namespace the namespace
* @param string $uri namspace uri
*
* @return void
*/
function addNamespace($namespace, $uri)
{
$ns = array($namespace => $uri);
$this->namespaces = array_merge($this->namespaces, $ns);
}
function addAuthor($name, $uri = null, $email = null)
{
$xs = new XMLStringer(true);
$xs->elementStart('author');
if (!empty($name)) {
$xs->element('name', null, $name);
} else {
throw new Atom10FeedException(
'author element must contain a name element.'
);
}
if (!is_null($uri)) {
$xs->element('uri', null, $uri);
}
if (!is_null(email)) {
$xs->element('email', null, $email);
}
$xs->elementEnd('author');
array_push($this->authors, $xs->getString());
}
/**
* Add an Author to the feed via raw XML string
*
* @param string $xmlAuthor An XML string representation author
*
* @return void
*/
function addAuthorRaw($xmlAuthor)
{
array_push($this->authors, $xmlAuthor);
}
function renderAuthors()
{
foreach ($this->authors as $author) {
$this->raw($author);
}
}
/**
* Add a activity feed subject via raw XML string
*
* @param string $xmlSubject An XML string representation of the subject
*
* @return void
*/
function setActivitySubject($xmlSubject)
{
$this->subject = $xmlSubject;
}
function getNamespaces()
{
return $this->namespaces;
}
function initFeed()
{
$this->xw->startDocument('1.0', 'UTF-8');
$commonAttrs = array('xml:lang' => 'en-US');
$commonAttrs = array_merge($commonAttrs, $this->namespaces);
$this->elementStart('feed', $commonAttrs);
$this->element('id', null, $this->id);
$this->element('title', null, $this->title);
$this->element('subtitle', null, $this->subtitle);
if (!empty($this->logo)) {
$this->element('logo', null, $this->logo);
}
$this->element('updated', null, $this->updated);
$this->renderLinks();
}
/**
* Check that all required elements have been set, etc.
* Throws an Atom10FeedException if something's missing.
*
* @return void
*/
function validate()
{
}
function renderLinks()
{
foreach ($this->links as $attrs)
{
$this->element('link', $attrs, null);
}
}
function addEntryRaw($xmlEntry)
{
array_push($this->entries, $xmlEntry);
}
function addEntry($entry)
{
array_push($this->entries, $entry->getString());
}
function renderEntries()
{
foreach ($this->entries as $entry) {
$this->raw($entry);
}
}
function endFeed()
{
$this->elementEnd('feed');
$this->xw->endDocument();
}
function getString()
{
$this->validate();
$this->initFeed();
$this->renderAuthors();
if (!empty($this->subject)) {
$this->raw($this->subject);
}
$this->renderEntries();
$this->endFeed();
return $this->xw->outputMemory();
}
function setId($id)
{
$this->id = $id;
}
function setTitle($title)
{
$this->title = $title;
}
function setSubtitle($subtitle)
{
$this->subtitle = $subtitle;
}
function setLogo($logo)
{
$this->logo = $logo;
}
function setUpdated($dt)
{
$this->updated = common_date_iso8601($dt);
}
function setPublished($dt)
{
$this->published = common_date_iso8601($dt);
}
/**
* Adds a link element into the Atom document
*
* Assumes you want rel="alternate" and type="text/html" unless
* you send in $otherAttrs.
*
* @param string $uri the uri the href needs to point to
* @param array $otherAttrs other attributes to stick in
*
* @return void
*/
function addLink($uri, $otherAttrs = null) {
$attrs = array('href' => $uri);
if (is_null($otherAttrs)) {
$attrs['rel'] = 'alternate';
$attrs['type'] = 'text/html';
} else {
$attrs = array_merge($attrs, $otherAttrs);
}
array_push($this->links, $attrs);
}
}

103
lib/atomnoticefeed.php Normal file
View File

@ -0,0 +1,103 @@
<?php
/**
* StatusNet, the distributed open-source microblogging tool
*
* Class for building and Atom feed from a collection of notices
*
* 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 Feed
* @package StatusNet
* @author Zach Copley <zach@status.net>
* @copyright 2010 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 creating a feed that represents a collection of notices. Builds the
* feed in memory. Get the feed as a string with AtomNoticeFeed::getString().
*
* @category Feed
* @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 AtomNoticeFeed extends Atom10Feed
{
function __construct($indent = true) {
parent::__construct($indent);
// Feeds containing notice info use these namespaces
$this->addNamespace(
'xmlns:thr',
'http://purl.org/syndication/thread/1.0'
);
$this->addNamespace(
'xmlns:georss',
'http://www.georss.org/georss'
);
$this->addNamespace(
'xmlns:activity',
'http://activitystrea.ms/spec/1.0/'
);
// XXX: What should the uri be?
$this->addNamespace(
'xmlns:ostatus',
'http://ostatus.org/schema/1.0'
);
}
/**
* Add more than one Notice to the feed
*
* @param mixed $notices an array of Notice objects or handle
*
*/
function addEntryFromNotices($notices)
{
if (is_array($notices)) {
foreach ($notices as $notice) {
$this->addEntryFromNotice($notice);
}
} else {
while ($notices->fetch()) {
$this->addEntryFromNotice($notices);
}
}
}
/**
* Add a single Notice to the feed
*
* @param Notice $notice a Notice to add
*/
function addEntryFromNotice($notice)
{
$this->addEntryRaw($notice->asAtomEntry());
}
}

View File

@ -47,6 +47,8 @@ class Cache
var $_items = array(); var $_items = array();
static $_inst = null; static $_inst = null;
const COMPRESSED = 1;
/** /**
* Singleton constructor * Singleton constructor
* *
@ -133,7 +135,7 @@ class Cache
* *
* @param string $key The key to use for lookups * @param string $key The key to use for lookups
* @param string $value The value to store * @param string $value The value to store
* @param integer $flag Flags to use, mostly ignored * @param integer $flag Flags to use, may include Cache::COMPRESSED
* @param integer $expiry Expiry value, mostly ignored * @param integer $expiry Expiry value, mostly ignored
* *
* @return boolean success flag * @return boolean success flag

View File

@ -88,6 +88,7 @@ $default =
'stomp_manual_failover' => true, // if multiple servers are listed, treat them as separate (enqueue on one randomly, listen on all) 'stomp_manual_failover' => true, // if multiple servers are listed, treat them as separate (enqueue on one randomly, listen on all)
'monitor' => null, // URL to monitor ping endpoint (work in progress) 'monitor' => null, // URL to monitor ping endpoint (work in progress)
'softlimit' => '90%', // total size or % of memory_limit at which to restart queue threads gracefully 'softlimit' => '90%', // total size or % of memory_limit at which to restart queue threads gracefully
'spawndelay' => 1, // Wait at least N seconds between (re)spawns of child processes to avoid slamming the queue server with subscription startup
'debug_memory' => false, // true to spit memory usage to log 'debug_memory' => false, // true to spit memory usage to log
'inboxes' => true, // true to do inbox distribution & output queueing from in background via 'distrib' queue 'inboxes' => true, // true to do inbox distribution & output queueing from in background via 'distrib' queue
), ),

View File

@ -56,6 +56,7 @@ class ErrorAction extends Action
$this->code = $code; $this->code = $code;
$this->message = $message; $this->message = $message;
$this->minimal = StatusNet::isApi();
// XXX: hack alert: usually we aren't going to // XXX: hack alert: usually we aren't going to
// call this page directly, but because it's // call this page directly, but because it's
@ -102,7 +103,14 @@ class ErrorAction extends Action
function showPage() function showPage()
{ {
parent::showPage(); if ($this->minimal) {
// Even more minimal -- we're in a machine API
// and don't want to flood the output.
$this->extraHeaders();
$this->showContent();
} else {
parent::showPage();
}
// We don't want to have any more output after this // We don't want to have any more output after this
exit(); exit();

View File

@ -81,12 +81,13 @@ class HTTPResponse extends HTTP_Request2_Response
} }
/** /**
* Check if the response is OK, generally a 200 status code. * Check if the response is OK, generally a 200 or other 2xx status code.
* @return bool * @return bool
*/ */
function isOk() function isOk()
{ {
return ($this->getStatus() == 200); $status = $this->getStatus();
return ($status >= 200 && $status < 300);
} }
} }

View File

@ -213,6 +213,7 @@ class MysqlSchema extends Schema
$sql .= "); "; $sql .= "); ";
common_log(LOG_INFO, $sql);
$res = $this->conn->query($sql); $res = $this->conn->query($sql);
if (PEAR::isError($res)) { if (PEAR::isError($res)) {

View File

@ -155,26 +155,26 @@ abstract class QueueManager extends IoManager
} }
/** /**
* Encode an object for queued storage. * Encode an object or variable for queued storage.
* Next gen may use serialization. * Notice objects are currently stored as an id reference;
* other items are serialized.
* *
* @param mixed $object * @param mixed $item
* @return string * @return string
*/ */
protected function encode($object) protected function encode($item)
{ {
if ($object instanceof Notice) { if ($item instanceof Notice) {
return $object->id; // Backwards compat
} else if (is_string($object)) { return $item->id;
return $object;
} else { } else {
throw new ServerException("Can't queue this type", 500); return serialize($item);
} }
} }
/** /**
* Decode an object from queued storage. * Decode an object from queued storage.
* Accepts back-compat notice reference entries and strings for now. * Accepts notice reference entries and serialized items.
* *
* @param string * @param string
* @return mixed * @return mixed
@ -182,9 +182,23 @@ abstract class QueueManager extends IoManager
protected function decode($frame) protected function decode($frame)
{ {
if (is_numeric($frame)) { if (is_numeric($frame)) {
// Back-compat for notices...
return Notice::staticGet(intval($frame)); return Notice::staticGet(intval($frame));
} else { } elseif (substr($frame, 0, 1) == '<') {
// Back-compat for XML source
return $frame; return $frame;
} else {
// Deserialize!
#$old = error_reporting();
#error_reporting($old & ~E_NOTICE);
$out = unserialize($frame);
#error_reporting($old);
if ($out === false && $frame !== 'b:0;') {
common_log(LOG_ERR, "Couldn't unserialize queued frame: $frame");
return false;
}
return $out;
} }
} }

View File

@ -57,5 +57,6 @@ class Right
const EMAILONREPLY = 'emailonreply'; const EMAILONREPLY = 'emailonreply';
const EMAILONSUBSCRIBE = 'emailonsubscribe'; const EMAILONSUBSCRIBE = 'emailonsubscribe';
const EMAILONFAVE = 'emailonfave'; const EMAILONFAVE = 'emailonfave';
const MAKEGROUPADMIN = 'makegroupadmin';
} }

View File

@ -83,6 +83,7 @@ abstract class SpawningDaemon extends Daemon
$this->log(LOG_INFO, "Spawned thread $i as pid $pid"); $this->log(LOG_INFO, "Spawned thread $i as pid $pid");
$children[$i] = $pid; $children[$i] = $pid;
} }
sleep(common_config('queue', 'spawndelay'));
} }
$this->log(LOG_INFO, "Waiting for children to complete."); $this->log(LOG_INFO, "Waiting for children to complete.");
@ -111,6 +112,7 @@ abstract class SpawningDaemon extends Daemon
$this->log(LOG_INFO, "Respawned thread $i as pid $pid"); $this->log(LOG_INFO, "Respawned thread $i as pid $pid");
$children[$i] = $pid; $children[$i] = $pid;
} }
sleep(common_config('queue', 'spawndelay'));
} else { } else {
$this->log(LOG_INFO, "Thread $i pid $pid exited with status $exitCode; closing out thread."); $this->log(LOG_INFO, "Thread $i pid $pid exited with status $exitCode; closing out thread.");
} }

View File

@ -30,6 +30,7 @@ global $config, $_server, $_path;
class StatusNet class StatusNet
{ {
protected static $have_config; protected static $have_config;
protected static $is_api;
/** /**
* Configure and instantiate a plugin into the current configuration. * Configure and instantiate a plugin into the current configuration.
@ -147,6 +148,16 @@ class StatusNet
return self::$have_config; return self::$have_config;
} }
public function isApi()
{
return self::$is_api;
}
public function setApi($mode)
{
self::$is_api = $mode;
}
/** /**
* Build default configuration array * Build default configuration array
* @return array * @return array

View File

@ -107,9 +107,10 @@ class StompQueueManager extends QueueManager
$message .= ':' . $param; $message .= ':' . $param;
} }
$this->_connect(); $this->_connect();
$result = $this->_send($this->control, $con = $this->cons[$this->defaultIdx];
$message, $result = $con->send($this->control,
array ('created' => common_sql_now())); $message,
array ('created' => common_sql_now()));
if ($result) { if ($result) {
$this->_log(LOG_INFO, "Sent control ping to queue daemons: $message"); $this->_log(LOG_INFO, "Sent control ping to queue daemons: $message");
return true; return true;
@ -368,17 +369,10 @@ class StompQueueManager extends QueueManager
foreach ($this->cons as $i => $con) { foreach ($this->cons as $i => $con) {
if ($con) { if ($con) {
$this->rollback($i); $this->rollback($i);
$con->unsubscribe($this->control); $con->disconnect();
$this->cons[$i] = null;
} }
} }
if ($this->sites) {
foreach ($this->sites as $server) {
StatusNet::init($server);
$this->doUnsubscribe();
}
} else {
$this->doUnsubscribe();
}
return true; return true;
} }
@ -555,26 +549,14 @@ class StompQueueManager extends QueueManager
} }
$host = $this->cons[$idx]->getServer(); $host = $this->cons[$idx]->getServer();
if (is_numeric($frame->body)) { $item = $this->decode($frame->body);
$id = intval($frame->body); if (empty($item)) {
$info = "notice $id posted at {$frame->headers['created']} in queue $queue from $host"; $this->_log(LOG_ERR, "Skipping empty or deleted item in queue $queue from $host");
return true;
$notice = Notice::staticGet('id', $id);
if (empty($notice)) {
$this->_log(LOG_WARNING, "Skipping missing $info");
$this->ack($idx, $frame);
$this->commit($idx);
$this->begin($idx);
$this->stats('badnotice', $queue);
return false;
}
$item = $notice;
} else {
// @fixme should we serialize, or json, or what here?
$info = "string posted at {$frame->headers['created']} in queue $queue from $host";
$item = $frame->body;
} }
$info = $this->logrep($item) . " posted at " .
$frame->headers['created'] . " in queue $queue from $host";
$this->_log(LOG_DEBUG, "Dequeued $info");
$handler = $this->getHandler($queue); $handler = $this->getHandler($queue);
if (!$handler) { if (!$handler) {

View File

@ -367,7 +367,8 @@ function common_current_user()
if ($_cur === false) { if ($_cur === false) {
if (isset($_REQUEST[session_name()]) || (isset($_SESSION['userid']) && $_SESSION['userid'])) { if (isset($_COOKIE[session_name()]) || isset($_GET[session_name()])
|| (isset($_SESSION['userid']) && $_SESSION['userid'])) {
common_ensure_session(); common_ensure_session();
$id = isset($_SESSION['userid']) ? $_SESSION['userid'] : false; $id = isset($_SESSION['userid']) ? $_SESSION['userid'] : false;
if ($id) { if ($id) {
@ -658,6 +659,9 @@ function common_valid_profile_tag($str)
function common_at_link($sender_id, $nickname) function common_at_link($sender_id, $nickname)
{ {
$sender = Profile::staticGet($sender_id); $sender = Profile::staticGet($sender_id);
if (!$sender) {
return $nickname;
}
$recipient = common_relative_profile($sender, common_canonical_nickname($nickname)); $recipient = common_relative_profile($sender, common_canonical_nickname($nickname));
if ($recipient) { if ($recipient) {
$user = User::staticGet('id', $recipient->id); $user = User::staticGet('id', $recipient->id);
@ -687,7 +691,7 @@ function common_group_link($sender_id, $nickname)
{ {
$sender = Profile::staticGet($sender_id); $sender = Profile::staticGet($sender_id);
$group = User_group::getForNickname($nickname); $group = User_group::getForNickname($nickname);
if ($group && $sender->isMember($group)) { if ($sender && $group && $sender->isMember($group)) {
$attrs = array('href' => $group->permalink(), $attrs = array('href' => $group->permalink(),
'class' => 'url'); 'class' => 'url');
if (!empty($group->fullname)) { if (!empty($group->fullname)) {

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-14 20:05+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:32+0000\n" "PO-Revision-Date: 2010-02-14 20:05:58+0000\n"
"Language-Team: Arabic\n" "Language-Team: Arabic\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62476); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ar\n" "X-Language-Code: ar\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -26,14 +26,12 @@ msgid "Access"
msgstr "نفاذ" msgstr "نفاذ"
#: actions/accessadminpanel.php:65 #: actions/accessadminpanel.php:65
#, fuzzy
msgid "Site access settings" msgid "Site access settings"
msgstr "اذف إعدادت الموقع" msgstr "إعدادات الوصول إلى الموقع"
#: actions/accessadminpanel.php:158 #: actions/accessadminpanel.php:158
#, fuzzy
msgid "Registration" msgid "Registration"
msgstr "سجّل" msgstr "تسجيل"
#: actions/accessadminpanel.php:161 #: actions/accessadminpanel.php:161
msgid "Private" msgid "Private"
@ -72,9 +70,8 @@ msgid "Save"
msgstr "أرسل" msgstr "أرسل"
#: actions/accessadminpanel.php:189 #: actions/accessadminpanel.php:189
#, fuzzy
msgid "Save access settings" msgid "Save access settings"
msgstr "اذف إعدادت الموقع" msgstr "حفظ إعدادت الوصول"
#: actions/all.php:63 actions/public.php:97 actions/replies.php:92 #: actions/all.php:63 actions/public.php:97 actions/replies.php:92
#: actions/showfavorites.php:137 actions/tag.php:51 #: actions/showfavorites.php:137 actions/tag.php:51
@ -165,8 +162,8 @@ msgstr ""
msgid "You and friends" msgid "You and friends"
msgstr "أنت والأصدقاء" msgstr "أنت والأصدقاء"
#: actions/allrss.php:119 actions/apitimelinefriends.php:121 #: actions/allrss.php:119 actions/apitimelinefriends.php:119
#: actions/apitimelinehome.php:122 #: actions/apitimelinehome.php:120
#, php-format #, php-format
msgid "Updates from %1$s and friends on %2$s!" msgid "Updates from %1$s and friends on %2$s!"
msgstr "" msgstr ""
@ -187,12 +184,12 @@ msgstr ""
#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112 #: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137 #: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111 #: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
#: actions/apitimelinefavorites.php:146 actions/apitimelinefriends.php:155 #: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
#: actions/apitimelinegroup.php:150 actions/apitimelinehome.php:156 #: actions/apitimelinegroup.php:182 actions/apitimelinehome.php:184
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:152
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:194 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "لم يتم العثور على وسيلة API." msgstr "لم يتم العثور على وسيلة API."
@ -280,7 +277,7 @@ msgstr "رسائل مباشرة من %s"
#: actions/apidirectmessage.php:93 #: actions/apidirectmessage.php:93
#, php-format #, php-format
msgid "All the direct messages sent from %s" msgid "All the direct messages sent from %s"
msgstr "" msgstr "جميع الرسائل المرسلة من %s"
#: actions/apidirectmessage.php:101 #: actions/apidirectmessage.php:101
#, php-format #, php-format
@ -353,7 +350,7 @@ msgstr ""
#: actions/apifriendshipsshow.php:134 #: actions/apifriendshipsshow.php:134
msgid "Could not determine source user." msgid "Could not determine source user."
msgstr "" msgstr "تعذّر تحديد المستخدم المصدر."
#: actions/apifriendshipsshow.php:142 #: actions/apifriendshipsshow.php:142
msgid "Could not find target user." msgid "Could not find target user."
@ -369,7 +366,7 @@ msgstr ""
#: actions/newgroup.php:130 actions/profilesettings.php:238 #: actions/newgroup.php:130 actions/profilesettings.php:238
#: actions/register.php:208 #: actions/register.php:208
msgid "Nickname already in use. Try another one." msgid "Nickname already in use. Try another one."
msgstr "" msgstr "الاسم المستعار مستخدم بالفعل. جرّب اسمًا آخرًا."
#: actions/apigroupcreate.php:180 actions/editgroup.php:189 #: actions/apigroupcreate.php:180 actions/editgroup.php:189
#: actions/newgroup.php:133 actions/profilesettings.php:218 #: actions/newgroup.php:133 actions/profilesettings.php:218
@ -406,7 +403,7 @@ msgstr ""
#: actions/newgroup.php:159 #: actions/newgroup.php:159
#, php-format #, php-format
msgid "Too many aliases! Maximum %d." msgid "Too many aliases! Maximum %d."
msgstr "" msgstr "كنيات كيرة! العدد الأقصى هو %d."
#: actions/apigroupcreate.php:264 actions/editgroup.php:224 #: actions/apigroupcreate.php:264 actions/editgroup.php:224
#: actions/newgroup.php:168 #: actions/newgroup.php:168
@ -446,7 +443,7 @@ msgstr "لم يمكن ضم المستخدم %1$s إلى المجموعة %2$s."
#: actions/apigroupleave.php:114 #: actions/apigroupleave.php:114
msgid "You are not a member of this group." msgid "You are not a member of this group."
msgstr "" msgstr "لست عضوًا في هذه المجموعة"
#: actions/apigroupleave.php:124 actions/leavegroup.php:119 #: actions/apigroupleave.php:124 actions/leavegroup.php:119
#, php-format #, php-format
@ -628,7 +625,7 @@ msgstr "نسق غير مدعوم."
msgid "%1$s / Favorites from %2$s" msgid "%1$s / Favorites from %2$s"
msgstr "" msgstr ""
#: actions/apitimelinefavorites.php:120 #: actions/apitimelinefavorites.php:117
#, php-format #, php-format
msgid "%1$s updates favorited by %2$s / %2$s." msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "" msgstr ""
@ -639,7 +636,7 @@ msgstr ""
msgid "%s timeline" msgid "%s timeline"
msgstr "مسار %s الزمني" msgstr "مسار %s الزمني"
#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 #: actions/apitimelinegroup.php:114 actions/apitimelineuser.php:126
#: actions/userrss.php:92 #: actions/userrss.php:92
#, php-format #, php-format
msgid "Updates from %1$s on %2$s!" msgid "Updates from %1$s on %2$s!"
@ -655,12 +652,12 @@ msgstr ""
msgid "%1$s updates that reply to updates from %2$s / %3$s." msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "" msgstr ""
#: actions/apitimelinepublic.php:107 actions/publicrss.php:103 #: actions/apitimelinepublic.php:111 actions/publicrss.php:103
#, php-format #, php-format
msgid "%s public timeline" msgid "%s public timeline"
msgstr "مسار %s الزمني العام" msgstr "مسار %s الزمني العام"
#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #: actions/apitimelinepublic.php:115 actions/publicrss.php:105
#, php-format #, php-format
msgid "%s updates from everyone!" msgid "%s updates from everyone!"
msgstr "" msgstr ""
@ -670,7 +667,7 @@ msgstr ""
msgid "Repeated to %s" msgid "Repeated to %s"
msgstr "كرر إلى %s" msgstr "كرر إلى %s"
#: actions/apitimelineretweetsofme.php:112 #: actions/apitimelineretweetsofme.php:114
#, php-format #, php-format
msgid "Repeats of %s" msgid "Repeats of %s"
msgstr "تكرارات %s" msgstr "تكرارات %s"
@ -680,7 +677,7 @@ msgstr "تكرارات %s"
msgid "Notices tagged with %s" msgid "Notices tagged with %s"
msgstr "الإشعارات الموسومة ب%s" msgstr "الإشعارات الموسومة ب%s"
#: actions/apitimelinetag.php:108 actions/tagrss.php:64 #: actions/apitimelinetag.php:104 actions/tagrss.php:64
#, php-format #, php-format
msgid "Updates tagged with %1$s on %2$s!" msgid "Updates tagged with %1$s on %2$s!"
msgstr "" msgstr ""
@ -804,7 +801,7 @@ msgstr "لا تمنع هذا المستخدم"
msgid "Yes" msgid "Yes"
msgstr "نعم" msgstr "نعم"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "امنع هذا المستخدم" msgstr "امنع هذا المستخدم"
@ -1217,7 +1214,7 @@ msgstr ""
msgid "Could not update group." msgid "Could not update group."
msgstr "تعذر تحديث المجموعة." msgstr "تعذر تحديث المجموعة."
#: actions/editgroup.php:259 classes/User_group.php:390 #: actions/editgroup.php:259 classes/User_group.php:423
msgid "Could not create aliases." msgid "Could not create aliases."
msgstr "تعذّر إنشاء الكنى." msgstr "تعذّر إنشاء الكنى."
@ -1550,7 +1547,7 @@ msgstr ""
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "المستخدم ليس عضوًا في المجموعة." msgstr "المستخدم ليس عضوًا في المجموعة."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "امنع المستخدم من المجموعة" msgstr "امنع المستخدم من المجموعة"
@ -1645,19 +1642,19 @@ msgstr "قائمة بمستخدمي هذه المجموعة."
msgid "Admin" msgid "Admin"
msgstr "إداري" msgstr "إداري"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "امنع" msgstr "امنع"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "اجعل هذا المستخدم إداريًا" msgstr "اجعل هذا المستخدم إداريًا"
@ -2005,21 +2002,21 @@ msgid ""
"(%%action.register%%) a new account." "(%%action.register%%) a new account."
msgstr "" msgstr ""
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "" msgstr ""
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "لم يمكن الحصول على تسجيل العضوية ل%1$s في المجموعة %2$s." msgstr "لم يمكن الحصول على تسجيل العضوية ل%1$s في المجموعة %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "لم يمكن جعل %1$s إداريا للمجموعة %2$s." msgstr "لم يمكن جعل %1$s إداريا للمجموعة %2$s."
@ -2214,8 +2211,8 @@ msgstr "نوع المحتوى "
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "ليس نسق بيانات مدعوم." msgstr "ليس نسق بيانات مدعوم."
@ -2544,7 +2541,7 @@ msgstr "إعدادات الملف الشخصي"
#: actions/profilesettings.php:71 #: actions/profilesettings.php:71
msgid "" msgid ""
"You can update your personal profile info here so people know more about you." "You can update your personal profile info here so people know more about you."
msgstr "" msgstr "بإمكانك تحديث بيانات ملفك الشخصي ليعرف عنك الناس أكثر."
#: actions/profilesettings.php:99 #: actions/profilesettings.php:99
msgid "Profile information" msgid "Profile information"
@ -2567,12 +2564,12 @@ msgstr "الصفحة الرئيسية"
#: actions/profilesettings.php:117 actions/register.php:455 #: actions/profilesettings.php:117 actions/register.php:455
msgid "URL of your homepage, blog, or profile on another site" msgid "URL of your homepage, blog, or profile on another site"
msgstr "" msgstr "مسار صفحتك الرئيسية أو مدونتك أو ملفك الشخصي على موقع آخر"
#: actions/profilesettings.php:122 actions/register.php:461 #: actions/profilesettings.php:122 actions/register.php:461
#, php-format #, php-format
msgid "Describe yourself and your interests in %d chars" msgid "Describe yourself and your interests in %d chars"
msgstr "" msgstr "تكلم عن نفسك واهتمامتك في %d حرف"
#: actions/profilesettings.php:125 actions/register.php:464 #: actions/profilesettings.php:125 actions/register.php:464
msgid "Describe yourself and your interests" msgid "Describe yourself and your interests"
@ -2591,7 +2588,7 @@ msgstr "الموقع"
#: actions/profilesettings.php:134 actions/register.php:473 #: actions/profilesettings.php:134 actions/register.php:473
msgid "Where you are, like \"City, State (or Region), Country\"" msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "" msgstr "مكان تواجدك، على سبيل المثال \"المدينة، الولاية (أو المنطقة)، الدولة\""
#: actions/profilesettings.php:138 #: actions/profilesettings.php:138
msgid "Share my current location when posting notices" msgid "Share my current location when posting notices"
@ -2607,6 +2604,7 @@ msgstr "الوسوم"
msgid "" msgid ""
"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
msgstr "" msgstr ""
"سِم نفسك (حروف وأرقام و \"-\" و \".\" و \"_\")، افصلها بفاصلة (',') أو مسافة."
#: actions/profilesettings.php:151 actions/siteadminpanel.php:280 #: actions/profilesettings.php:151 actions/siteadminpanel.php:280
msgid "Language" msgid "Language"
@ -2627,7 +2625,7 @@ msgstr "ما المنطقة الزمنية التي تتواجد فيها عاد
#: actions/profilesettings.php:167 #: actions/profilesettings.php:167
msgid "" msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)" "Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "" msgstr "اشترك تلقائيًا بأي شخص يشترك بي (يفضل أن يستخدم لغير البشر)"
#: actions/profilesettings.php:228 actions/register.php:223 #: actions/profilesettings.php:228 actions/register.php:223
#, php-format #, php-format
@ -4246,7 +4244,7 @@ msgstr "مشكلة أثناء حفظ الإشعار."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
#: classes/Notice.php:1231 #: classes/Notice.php:1271
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "آر تي @%1$s %2$s" msgstr "آر تي @%1$s %2$s"
@ -4256,11 +4254,11 @@ msgstr "آر تي @%1$s %2$s"
msgid "Welcome to %1$s, @%2$s!" msgid "Welcome to %1$s, @%2$s!"
msgstr "أهلا بكم في %1$s يا @%2$s!" msgstr "أهلا بكم في %1$s يا @%2$s!"
#: classes/User_group.php:380 #: classes/User_group.php:413
msgid "Could not create group." msgid "Could not create group."
msgstr "تعذّر إنشاء المجموعة." msgstr "تعذّر إنشاء المجموعة."
#: classes/User_group.php:409 #: classes/User_group.php:442
msgid "Could not set group membership." msgid "Could not set group membership."
msgstr "تعذّر ضبط عضوية المجموعة." msgstr "تعذّر ضبط عضوية المجموعة."
@ -5802,47 +5800,47 @@ msgstr "رسالة"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:871
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "قبل لحظات قليلة" msgstr "قبل لحظات قليلة"
#: lib/util.php:869 #: lib/util.php:873
msgid "about a minute ago" msgid "about a minute ago"
msgstr "قبل دقيقة تقريبًا" msgstr "قبل دقيقة تقريبًا"
#: lib/util.php:871 #: lib/util.php:875
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "" msgstr ""
#: lib/util.php:873 #: lib/util.php:877
msgid "about an hour ago" msgid "about an hour ago"
msgstr "قبل ساعة تقريبًا" msgstr "قبل ساعة تقريبًا"
#: lib/util.php:875 #: lib/util.php:879
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "" msgstr ""
#: lib/util.php:877 #: lib/util.php:881
msgid "about a day ago" msgid "about a day ago"
msgstr "قبل يوم تقريبا" msgstr "قبل يوم تقريبا"
#: lib/util.php:879 #: lib/util.php:883
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "" msgstr ""
#: lib/util.php:881 #: lib/util.php:885
msgid "about a month ago" msgid "about a month ago"
msgstr "قبل شهر تقريبًا" msgstr "قبل شهر تقريبًا"
#: lib/util.php:883 #: lib/util.php:887
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "" msgstr ""
#: lib/util.php:885 #: lib/util.php:889
msgid "about a year ago" msgid "about a year ago"
msgstr "قبل سنة تقريبًا" msgstr "قبل سنة تقريبًا"

View File

@ -1,5 +1,6 @@
# Translation of StatusNet to Egyptian Spoken Arabic # Translation of StatusNet to Egyptian Spoken Arabic
# #
# Author@translatewiki.net: Dudi
# Author@translatewiki.net: Ghaly # Author@translatewiki.net: Ghaly
# Author@translatewiki.net: Meno25 # Author@translatewiki.net: Meno25
# -- # --
@ -9,12 +10,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-14 20:05+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:37+0000\n" "PO-Revision-Date: 2010-02-14 20:06:01+0000\n"
"Language-Team: Egyptian Spoken Arabic\n" "Language-Team: Egyptian Spoken Arabic\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62476); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: arz\n" "X-Language-Code: arz\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -110,7 +111,7 @@ msgstr "لا مستخدم كهذا."
#: actions/all.php:84 #: actions/all.php:84
#, php-format #, php-format
msgid "%1$s and friends, page %2$d" msgid "%1$s and friends, page %2$d"
msgstr "%1$s والأصدقاء, الصفحه %2$d" msgstr "%1$s و الصحاب, صفحه %2$d"
#: actions/all.php:86 actions/all.php:167 actions/allrss.php:115 #: actions/all.php:86 actions/all.php:167 actions/allrss.php:115
#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115 #: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
@ -165,8 +166,8 @@ msgstr ""
msgid "You and friends" msgid "You and friends"
msgstr "أنت والأصدقاء" msgstr "أنت والأصدقاء"
#: actions/allrss.php:119 actions/apitimelinefriends.php:121 #: actions/allrss.php:119 actions/apitimelinefriends.php:119
#: actions/apitimelinehome.php:122 #: actions/apitimelinehome.php:120
#, php-format #, php-format
msgid "Updates from %1$s and friends on %2$s!" msgid "Updates from %1$s and friends on %2$s!"
msgstr "" msgstr ""
@ -187,12 +188,12 @@ msgstr ""
#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112 #: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137 #: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111 #: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
#: actions/apitimelinefavorites.php:146 actions/apitimelinefriends.php:155 #: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
#: actions/apitimelinegroup.php:150 actions/apitimelinehome.php:156 #: actions/apitimelinegroup.php:182 actions/apitimelinehome.php:184
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:152
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:194 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "لم يتم العثور على وسيله API." msgstr "لم يتم العثور على وسيله API."
@ -316,7 +317,7 @@ msgstr ""
#: actions/apifavoritecreate.php:119 #: actions/apifavoritecreate.php:119
msgid "This status is already a favorite." msgid "This status is already a favorite."
msgstr "هذه الحاله مفضله بالفعل." msgstr "الحاله دى موجوده فعلا فى التفضيلات."
#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176 #: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
msgid "Could not create favorite." msgid "Could not create favorite."
@ -324,7 +325,7 @@ msgstr "تعذّر إنشاء مفضله."
#: actions/apifavoritedestroy.php:122 #: actions/apifavoritedestroy.php:122
msgid "That status is not a favorite." msgid "That status is not a favorite."
msgstr "تلك الحاله ليست مفضله." msgstr "الحاله دى مش محطوطه فى التفضيلات."
#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87 #: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
msgid "Could not delete favorite." msgid "Could not delete favorite."
@ -345,7 +346,7 @@ msgstr ""
#: actions/apifriendshipsdestroy.php:120 #: actions/apifriendshipsdestroy.php:120
msgid "You cannot unfollow yourself." msgid "You cannot unfollow yourself."
msgstr "لا يمكنك عدم متابعه نفسك." msgstr "ما ينفعش عدم متابعة نفسك."
#: actions/apifriendshipsexists.php:94 #: actions/apifriendshipsexists.php:94
msgid "Two user ids or screen_names must be supplied." msgid "Two user ids or screen_names must be supplied."
@ -442,7 +443,7 @@ msgstr ""
#: actions/apigroupjoin.php:138 actions/joingroup.php:124 #: actions/apigroupjoin.php:138 actions/joingroup.php:124
#, php-format #, php-format
msgid "Could not join user %1$s to group %2$s." msgid "Could not join user %1$s to group %2$s."
msgstr "لم يمكن ضم المستخدم %1$s إلى المجموعه %2$s." msgstr "ما نفعش يضم %1$s للجروپ %2$s."
#: actions/apigroupleave.php:114 #: actions/apigroupleave.php:114
msgid "You are not a member of this group." msgid "You are not a member of this group."
@ -451,7 +452,7 @@ msgstr ""
#: actions/apigroupleave.php:124 actions/leavegroup.php:119 #: actions/apigroupleave.php:124 actions/leavegroup.php:119
#, php-format #, php-format
msgid "Could not remove user %1$s from group %2$s." msgid "Could not remove user %1$s from group %2$s."
msgstr "لم يمكن إزاله المستخدم %1$s من المجموعه %2$s." msgstr "ما نفعش يتشال اليوزر %1$s من الجروپ %2$s."
#: actions/apigrouplist.php:95 #: actions/apigrouplist.php:95
#, php-format #, php-format
@ -497,7 +498,7 @@ msgstr ""
#: actions/apioauthauthorize.php:135 #: actions/apioauthauthorize.php:135
msgid "Invalid nickname / password!" msgid "Invalid nickname / password!"
msgstr "اسم/كلمه سر غير صحيحة!" msgstr "نيكنيم / پاسوورد مش مظبوطه!"
#: actions/apioauthauthorize.php:159 #: actions/apioauthauthorize.php:159
#, fuzzy #, fuzzy
@ -628,7 +629,7 @@ msgstr "نسق غير مدعوم."
msgid "%1$s / Favorites from %2$s" msgid "%1$s / Favorites from %2$s"
msgstr "" msgstr ""
#: actions/apitimelinefavorites.php:120 #: actions/apitimelinefavorites.php:117
#, php-format #, php-format
msgid "%1$s updates favorited by %2$s / %2$s." msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "" msgstr ""
@ -639,7 +640,7 @@ msgstr ""
msgid "%s timeline" msgid "%s timeline"
msgstr "مسار %s الزمني" msgstr "مسار %s الزمني"
#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 #: actions/apitimelinegroup.php:114 actions/apitimelineuser.php:126
#: actions/userrss.php:92 #: actions/userrss.php:92
#, php-format #, php-format
msgid "Updates from %1$s on %2$s!" msgid "Updates from %1$s on %2$s!"
@ -655,12 +656,12 @@ msgstr ""
msgid "%1$s updates that reply to updates from %2$s / %3$s." msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "" msgstr ""
#: actions/apitimelinepublic.php:107 actions/publicrss.php:103 #: actions/apitimelinepublic.php:111 actions/publicrss.php:103
#, php-format #, php-format
msgid "%s public timeline" msgid "%s public timeline"
msgstr "مسار %s الزمنى العام" msgstr "مسار %s الزمنى العام"
#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #: actions/apitimelinepublic.php:115 actions/publicrss.php:105
#, php-format #, php-format
msgid "%s updates from everyone!" msgid "%s updates from everyone!"
msgstr "" msgstr ""
@ -670,7 +671,7 @@ msgstr ""
msgid "Repeated to %s" msgid "Repeated to %s"
msgstr "كرر إلى %s" msgstr "كرر إلى %s"
#: actions/apitimelineretweetsofme.php:112 #: actions/apitimelineretweetsofme.php:114
#, php-format #, php-format
msgid "Repeats of %s" msgid "Repeats of %s"
msgstr "تكرارات %s" msgstr "تكرارات %s"
@ -680,7 +681,7 @@ msgstr "تكرارات %s"
msgid "Notices tagged with %s" msgid "Notices tagged with %s"
msgstr "الإشعارات الموسومه ب%s" msgstr "الإشعارات الموسومه ب%s"
#: actions/apitimelinetag.php:108 actions/tagrss.php:64 #: actions/apitimelinetag.php:104 actions/tagrss.php:64
#, php-format #, php-format
msgid "Updates tagged with %1$s on %2$s!" msgid "Updates tagged with %1$s on %2$s!"
msgstr "" msgstr ""
@ -804,7 +805,7 @@ msgstr "لا تمنع هذا المستخدم"
msgid "Yes" msgid "Yes"
msgstr "نعم" msgstr "نعم"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "امنع هذا المستخدم" msgstr "امنع هذا المستخدم"
@ -830,7 +831,7 @@ msgstr ""
#: actions/blockedfromgroup.php:93 #: actions/blockedfromgroup.php:93
#, php-format #, php-format
msgid "%1$s blocked profiles, page %2$d" msgid "%1$s blocked profiles, page %2$d"
msgstr "%1$s ملفات ممنوعة, الصفحه %2$d" msgstr "%1$s فايلات معمول ليها بلوك, الصفحه %2$d"
#: actions/blockedfromgroup.php:108 #: actions/blockedfromgroup.php:108
msgid "A list of the users blocked from joining this group." msgid "A list of the users blocked from joining this group."
@ -888,7 +889,7 @@ msgstr "تعذّر حذف تأكيد البريد الإلكترونى."
#: actions/confirmaddress.php:144 #: actions/confirmaddress.php:144
msgid "Confirm address" msgid "Confirm address"
msgstr "أكد العنوان" msgstr "اكد العنوان"
#: actions/confirmaddress.php:159 #: actions/confirmaddress.php:159
#, php-format #, php-format
@ -917,7 +918,7 @@ msgstr "لم يوجد رمز التأكيد."
#: actions/deleteapplication.php:78 actions/editapplication.php:77 #: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94 #: actions/showapplication.php:94
msgid "You are not the owner of this application." msgid "You are not the owner of this application."
msgstr "أنت لست مالك هذا التطبيق." msgstr "انت مش بتملك الapplication دى."
#: actions/deleteapplication.php:102 actions/editapplication.php:127 #: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118 #: actions/newapplication.php:110 actions/showapplication.php:118
@ -1131,16 +1132,16 @@ msgstr "تطبيقات OAuth"
#: actions/editapplication.php:66 #: actions/editapplication.php:66
msgid "You must be logged in to edit an application." msgid "You must be logged in to edit an application."
msgstr "يجب أن تكون مسجل الدخول لتعدل تطبيقا." msgstr "لازم يكون متسجل دخولك علشان تعدّل application."
#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166 #: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
#: actions/showapplication.php:87 #: actions/showapplication.php:87
msgid "No such application." msgid "No such application."
msgstr "لا تطبيق كهذا." msgstr "ما فيش application زى كده."
#: actions/editapplication.php:161 #: actions/editapplication.php:161
msgid "Use this form to edit your application." msgid "Use this form to edit your application."
msgstr "استخدم النموذج ده علشان تعدل تطبيقك." msgstr "استعمل الفورمه دى علشان تعدّل الapplication بتاعتك."
#: actions/editapplication.php:177 actions/newapplication.php:159 #: actions/editapplication.php:177 actions/newapplication.php:159
msgid "Name is required." msgid "Name is required."
@ -1148,7 +1149,7 @@ msgstr "الاسم مطلوب."
#: actions/editapplication.php:180 actions/newapplication.php:165 #: actions/editapplication.php:180 actions/newapplication.php:165
msgid "Name is too long (max 255 chars)." msgid "Name is too long (max 255 chars)."
msgstr "الاسم طويل جدا (الأقصى 255 حرفا)." msgstr "الاسم طويل جدا (اكتر حاجه 255 رمز)."
#: actions/editapplication.php:183 actions/newapplication.php:162 #: actions/editapplication.php:183 actions/newapplication.php:162
msgid "Name already in use. Try another one." msgid "Name already in use. Try another one."
@ -1164,7 +1165,7 @@ msgstr ""
#: actions/editapplication.php:200 actions/newapplication.php:185 #: actions/editapplication.php:200 actions/newapplication.php:185
msgid "Source URL is not valid." msgid "Source URL is not valid."
msgstr "مسار المصدر ليس صحيحا." msgstr "الSource URL مش مظبوط."
#: actions/editapplication.php:203 actions/newapplication.php:188 #: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required." msgid "Organization is required."
@ -1172,7 +1173,7 @@ msgstr ""
#: actions/editapplication.php:206 actions/newapplication.php:191 #: actions/editapplication.php:206 actions/newapplication.php:191
msgid "Organization is too long (max 255 chars)." msgid "Organization is too long (max 255 chars)."
msgstr "المنظمه طويله جدا (الأقصى 255 حرفا)." msgstr "المنظمه طويله جدا (اكتر حاجه 255 رمز)."
#: actions/editapplication.php:209 actions/newapplication.php:194 #: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required." msgid "Organization homepage is required."
@ -1188,7 +1189,7 @@ msgstr ""
#: actions/editapplication.php:258 #: actions/editapplication.php:258
msgid "Could not update application." msgid "Could not update application."
msgstr "لم يمكن تحديث التطبيق." msgstr "ما نفعش تحديث الapplication."
#: actions/editgroup.php:56 #: actions/editgroup.php:56
#, php-format #, php-format
@ -1202,7 +1203,7 @@ msgstr "يجب أن تكون والجًا لتنشئ مجموعه."
#: actions/editgroup.php:103 actions/editgroup.php:168 #: actions/editgroup.php:103 actions/editgroup.php:168
#: actions/groupdesignsettings.php:104 actions/grouplogo.php:106 #: actions/groupdesignsettings.php:104 actions/grouplogo.php:106
msgid "You must be an admin to edit the group." msgid "You must be an admin to edit the group."
msgstr "يجب أن تكون إداريا لتعدل المجموعه." msgstr "لازم تكون ادارى علشان تعدّل الجروپ."
#: actions/editgroup.php:154 #: actions/editgroup.php:154
msgid "Use this form to edit the group." msgid "Use this form to edit the group."
@ -1217,7 +1218,7 @@ msgstr ""
msgid "Could not update group." msgid "Could not update group."
msgstr "تعذر تحديث المجموعه." msgstr "تعذر تحديث المجموعه."
#: actions/editgroup.php:259 classes/User_group.php:390 #: actions/editgroup.php:259 classes/User_group.php:423
msgid "Could not create aliases." msgid "Could not create aliases."
msgstr "تعذّر إنشاء الكنى." msgstr "تعذّر إنشاء الكنى."
@ -1227,7 +1228,7 @@ msgstr "حُفظت الخيارات."
#: actions/emailsettings.php:60 #: actions/emailsettings.php:60
msgid "Email settings" msgid "Email settings"
msgstr "إعدادات البريد الإلكتروني" msgstr "تظبيطات الايميل"
#: actions/emailsettings.php:71 #: actions/emailsettings.php:71
#, php-format #, php-format
@ -1263,7 +1264,7 @@ msgstr "ألغِ"
#: actions/emailsettings.php:121 #: actions/emailsettings.php:121
msgid "Email address" msgid "Email address"
msgstr "عنوان البريد الإلكتروني" msgstr "عنوان الايميل"
#: actions/emailsettings.php:123 #: actions/emailsettings.php:123
msgid "Email address, like \"UserName@example.org\"" msgid "Email address, like \"UserName@example.org\""
@ -1550,7 +1551,7 @@ msgstr ""
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "المستخدم ليس عضوًا فى المجموعه." msgstr "المستخدم ليس عضوًا فى المجموعه."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "امنع المستخدم من المجموعة" msgstr "امنع المستخدم من المجموعة"
@ -1613,7 +1614,7 @@ msgstr ""
#: actions/grouplogo.php:178 #: actions/grouplogo.php:178
msgid "User without matching profile." msgid "User without matching profile."
msgstr "المستخدم بدون ملف مطابق." msgstr "يوزر من-غير پروفايل زيّه."
#: actions/grouplogo.php:362 #: actions/grouplogo.php:362
msgid "Pick a square area of the image to be the logo." msgid "Pick a square area of the image to be the logo."
@ -1635,7 +1636,7 @@ msgstr "أعضاء مجموعه %s"
#: actions/groupmembers.php:96 #: actions/groupmembers.php:96
#, php-format #, php-format
msgid "%1$s group members, page %2$d" msgid "%1$s group members, page %2$d"
msgstr "%1$s أعضاء المجموعة, الصفحه %2$d" msgstr "%1$s اعضاء الجروپ, صفحه %2$d"
#: actions/groupmembers.php:111 #: actions/groupmembers.php:111
msgid "A list of the users in this group." msgid "A list of the users in this group."
@ -1645,19 +1646,19 @@ msgstr "قائمه بمستخدمى هذه المجموعه."
msgid "Admin" msgid "Admin"
msgstr "إداري" msgstr "إداري"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "امنع" msgstr "امنع"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "اجعل هذا المستخدم إداريًا" msgstr "اجعل هذا المستخدم إداريًا"
@ -1734,7 +1735,7 @@ msgstr "خطأ أثناء منع الحجب."
#: actions/imsettings.php:59 #: actions/imsettings.php:59
msgid "IM settings" msgid "IM settings"
msgstr "إعدادات المراسله الفورية" msgstr "تظبيطات بعت الرسايل الفوريه"
#: actions/imsettings.php:70 #: actions/imsettings.php:70
#, php-format #, php-format
@ -1760,7 +1761,7 @@ msgstr ""
#: actions/imsettings.php:124 #: actions/imsettings.php:124
msgid "IM address" msgid "IM address"
msgstr "عنوان المراسله الفورية" msgstr "عنوان الرساله الفوريه"
#: actions/imsettings.php:126 #: actions/imsettings.php:126
#, php-format #, php-format
@ -1944,7 +1945,7 @@ msgstr ""
#: actions/joingroup.php:131 #: actions/joingroup.php:131
#, php-format #, php-format
msgid "%1$s joined group %2$s" msgid "%1$s joined group %2$s"
msgstr "%1$s انضم للمجموعه %2$s" msgstr "%1$s دخل جروپ %2$s"
#: actions/leavegroup.php:60 #: actions/leavegroup.php:60
msgid "You must be logged in to leave a group." msgid "You must be logged in to leave a group."
@ -1957,7 +1958,7 @@ msgstr "لست عضوا فى تلك المجموعه."
#: actions/leavegroup.php:127 #: actions/leavegroup.php:127
#, php-format #, php-format
msgid "%1$s left group %2$s" msgid "%1$s left group %2$s"
msgstr "%1$s ترك المجموعه %2$s" msgstr "%1$s ساب جروپ %2$s"
#: actions/login.php:80 actions/otp.php:62 actions/register.php:137 #: actions/login.php:80 actions/otp.php:62 actions/register.php:137
msgid "Already logged in." msgid "Already logged in."
@ -2005,24 +2006,24 @@ msgid ""
"(%%action.register%%) a new account." "(%%action.register%%) a new account."
msgstr "" msgstr ""
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "" msgstr ""
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "لم يمكن الحصول على تسجيل العضويه ل%1$s فى المجموعه %2$s." msgstr "مش نافع يتجاب سجل العضويه لـ%1$s فى جروپ %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "لم يمكن جعل %1$s إداريا للمجموعه %2$s." msgstr "%1$s مش نافع يبقى ادارى لجروپ %2$s."
#: actions/microsummary.php:69 #: actions/microsummary.php:69
msgid "No current status" msgid "No current status"
@ -2035,11 +2036,11 @@ msgstr "لا تطبيق كهذا."
#: actions/newapplication.php:64 #: actions/newapplication.php:64
msgid "You must be logged in to register an application." msgid "You must be logged in to register an application."
msgstr "يجب أن تكون مسجل الدخول لتسجل تطبيقا." msgstr "لازم تكون مسجل دخوللك علشان تسجل application."
#: actions/newapplication.php:143 #: actions/newapplication.php:143
msgid "Use this form to register a new application." msgid "Use this form to register a new application."
msgstr "استخدم هذا النموذج لتسجل تطبيقا جديدا." msgstr "استعمل الفورمه دى علشان تسجل application جديد."
#: actions/newapplication.php:176 #: actions/newapplication.php:176
msgid "Source URL is required." msgid "Source URL is required."
@ -2047,7 +2048,7 @@ msgstr ""
#: actions/newapplication.php:258 actions/newapplication.php:267 #: actions/newapplication.php:258 actions/newapplication.php:267
msgid "Could not create application." msgid "Could not create application."
msgstr "مش ممكن إنشاء التطبيق." msgstr "مش ممكن إنشاء الapplication."
#: actions/newgroup.php:53 #: actions/newgroup.php:53
msgid "New group" msgid "New group"
@ -2086,7 +2087,7 @@ msgstr "أُرسلت الرسالة"
#: actions/newmessage.php:185 #: actions/newmessage.php:185
#, php-format #, php-format
msgid "Direct message to %s sent." msgid "Direct message to %s sent."
msgstr "رساله مباشره ل%s تم إرسالها." msgstr "رساله مباشره اتبعتت لـ%s."
#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170 #: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
msgid "Ajax Error" msgid "Ajax Error"
@ -2114,7 +2115,7 @@ msgstr "بحث فى النصوص"
#: actions/noticesearch.php:91 #: actions/noticesearch.php:91
#, php-format #, php-format
msgid "Search results for \"%1$s\" on %2$s" msgid "Search results for \"%1$s\" on %2$s"
msgstr "نتائج البحث ل\"%1$s\" على %2$s" msgstr "نتايج التدوير لـ\"%1$s\" على %2$s"
#: actions/noticesearch.php:121 #: actions/noticesearch.php:121
#, php-format #, php-format
@ -2155,11 +2156,11 @@ msgstr "أُرسل التنبيه!"
#: actions/oauthappssettings.php:59 #: actions/oauthappssettings.php:59
msgid "You must be logged in to list your applications." msgid "You must be logged in to list your applications."
msgstr "يجب أن تكون مسجل الدخول لعرض تطبيقاتك." msgstr "لازم تكون مسجل دخولك علشان تشوف ليستة الapplications بتاعتك."
#: actions/oauthappssettings.php:74 #: actions/oauthappssettings.php:74
msgid "OAuth applications" msgid "OAuth applications"
msgstr "تطبيقات OAuth" msgstr "OAuth applications"
#: actions/oauthappssettings.php:85 #: actions/oauthappssettings.php:85
msgid "Applications you have registered" msgid "Applications you have registered"
@ -2180,7 +2181,7 @@ msgstr ""
#: actions/oauthconnectionssettings.php:175 #: actions/oauthconnectionssettings.php:175
msgid "You are not a user of that application." msgid "You are not a user of that application."
msgstr "أنت لست مستخدما لهذا التطبيق." msgstr "انت مش يوزر للapplication دى."
#: actions/oauthconnectionssettings.php:186 #: actions/oauthconnectionssettings.php:186
msgid "Unable to revoke access for app: " msgid "Unable to revoke access for app: "
@ -2212,8 +2213,8 @@ msgstr "نوع المحتوى "
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr " مش نظام بيانات مدعوم." msgstr " مش نظام بيانات مدعوم."
@ -2227,7 +2228,7 @@ msgstr "بحث الإشعارات"
#: actions/othersettings.php:60 #: actions/othersettings.php:60
msgid "Other settings" msgid "Other settings"
msgstr "إعدادات تانيه" msgstr "تظبيطات تانيه"
#: actions/othersettings.php:71 #: actions/othersettings.php:71
msgid "Manage various other options." msgid "Manage various other options."
@ -2259,23 +2260,23 @@ msgstr ""
#: actions/otp.php:69 #: actions/otp.php:69
msgid "No user ID specified." msgid "No user ID specified."
msgstr "لا هويه مستخدم محدده." msgstr "ما فيش ID متحدد لليوزر."
#: actions/otp.php:83 #: actions/otp.php:83
msgid "No login token specified." msgid "No login token specified."
msgstr "لا محتوى دخول محدد." msgstr "ما فيش امارة دخول متحدده."
#: actions/otp.php:90 #: actions/otp.php:90
msgid "No login token requested." msgid "No login token requested."
msgstr "لا طلب استيثاق." msgstr "ما فيش طلب تسجيل دخول مطلوب."
#: actions/otp.php:95 #: actions/otp.php:95
msgid "Invalid login token specified." msgid "Invalid login token specified."
msgstr "توكن دخول غير صحيح محدد." msgstr "امارة تسجيل الدخول اللى اتحطت مش موجوده."
#: actions/otp.php:104 #: actions/otp.php:104
msgid "Login token expired." msgid "Login token expired."
msgstr "توكن الدخول انتهى." msgstr "تاريخ صلاحية الاماره خلص."
#: actions/outbox.php:58 #: actions/outbox.php:58
#, php-format #, php-format
@ -2495,7 +2496,7 @@ msgstr ""
#: actions/pathsadminpanel.php:335 #: actions/pathsadminpanel.php:335
msgid "SSL server" msgid "SSL server"
msgstr "خادم SSL" msgstr "SSL server"
#: actions/pathsadminpanel.php:336 #: actions/pathsadminpanel.php:336
msgid "Server to direct SSL requests to" msgid "Server to direct SSL requests to"
@ -3118,7 +3119,7 @@ msgstr ""
#: actions/rsd.php:146 actions/version.php:157 #: actions/rsd.php:146 actions/version.php:157
msgid "StatusNet" msgid "StatusNet"
msgstr "ستاتس نت" msgstr "StatusNet"
#: actions/sandbox.php:65 actions/unsandbox.php:65 #: actions/sandbox.php:65 actions/unsandbox.php:65
msgid "You cannot sandbox users on this site." msgid "You cannot sandbox users on this site."
@ -3161,7 +3162,7 @@ msgstr "اذف إعدادت الموقع"
#: actions/showapplication.php:82 #: actions/showapplication.php:82
msgid "You must be logged in to view an application." msgid "You must be logged in to view an application."
msgstr "يجب أن تكون مسجل الدخول لرؤيه تطبيق." msgstr "لازم تكون مسجل دخولك علشان تشوف اى application."
#: actions/showapplication.php:157 #: actions/showapplication.php:157
msgid "Application profile" msgid "Application profile"
@ -3178,7 +3179,7 @@ msgstr "الاسم"
#: actions/showapplication.php:178 lib/applicationeditform.php:222 #: actions/showapplication.php:178 lib/applicationeditform.php:222
msgid "Organization" msgid "Organization"
msgstr "المنظمة" msgstr "المنظمه"
#: actions/showapplication.php:187 actions/version.php:198 #: actions/showapplication.php:187 actions/version.php:198
#: lib/applicationeditform.php:209 lib/groupeditform.php:172 #: lib/applicationeditform.php:209 lib/groupeditform.php:172
@ -3225,7 +3226,7 @@ msgstr ""
#: actions/showapplication.php:283 #: actions/showapplication.php:283
msgid "Authorize URL" msgid "Authorize URL"
msgstr "اسمح بالمسار" msgstr "اسمح للURL"
#: actions/showapplication.php:288 #: actions/showapplication.php:288
msgid "" msgid ""
@ -3499,12 +3500,12 @@ msgstr "يجب ألا يكون طول اسم الموقع صفرًا."
#: actions/siteadminpanel.php:140 #: actions/siteadminpanel.php:140
msgid "You must have a valid contact email address." msgid "You must have a valid contact email address."
msgstr "يجب أن تملك عنوان بريد إلكترونى صحيح." msgstr "لازم يكون عندك عنوان ايميل صالح."
#: actions/siteadminpanel.php:158 #: actions/siteadminpanel.php:158
#, php-format #, php-format
msgid "Unknown language \"%s\"." msgid "Unknown language \"%s\"."
msgstr "لغه غير معروفه \"%s\"." msgstr "لغه مش معروفه \"%s\"."
#: actions/siteadminpanel.php:165 #: actions/siteadminpanel.php:165
msgid "Invalid snapshot report URL." msgid "Invalid snapshot report URL."
@ -3632,7 +3633,7 @@ msgstr ""
#: actions/smssettings.php:58 #: actions/smssettings.php:58
msgid "SMS settings" msgid "SMS settings"
msgstr "إعدادات الرسائل القصيرة" msgstr "تظبيطات الـSMS"
#: actions/smssettings.php:69 #: actions/smssettings.php:69
#, php-format #, php-format
@ -3661,7 +3662,7 @@ msgstr ""
#: actions/smssettings.php:138 #: actions/smssettings.php:138
msgid "SMS phone number" msgid "SMS phone number"
msgstr "رقم هاتف SMS" msgstr "نمرة تليفون الـSMS"
#: actions/smssettings.php:140 #: actions/smssettings.php:140
msgid "Phone number, no punctuation or spaces, with area code" msgid "Phone number, no punctuation or spaces, with area code"
@ -3746,7 +3747,7 @@ msgstr "مشتركو %s"
#: actions/subscribers.php:52 #: actions/subscribers.php:52
#, php-format #, php-format
msgid "%1$s subscribers, page %2$d" msgid "%1$s subscribers, page %2$d"
msgstr "مشتركو %1$s, الصفحه %2$d" msgstr "%1$s مشتركين, صفحه %2$d"
#: actions/subscribers.php:63 #: actions/subscribers.php:63
msgid "These are the people who listen to your notices." msgid "These are the people who listen to your notices."
@ -3783,7 +3784,7 @@ msgstr "اشتراكات %s"
#: actions/subscriptions.php:54 #: actions/subscriptions.php:54
#, php-format #, php-format
msgid "%1$s subscriptions, page %2$d" msgid "%1$s subscriptions, page %2$d"
msgstr "اشتراكات%1$s, الصفحه %2$d" msgstr "%1$s اشتراكات, صفحه %2$d"
#: actions/subscriptions.php:65 #: actions/subscriptions.php:65
msgid "These are the people whose notices you listen to." msgid "These are the people whose notices you listen to."
@ -4108,7 +4109,7 @@ msgstr ""
#: actions/version.php:73 #: actions/version.php:73
#, php-format #, php-format
msgid "StatusNet %s" msgid "StatusNet %s"
msgstr "ستاتس نت %s" msgstr "StatusNet %s"
#: actions/version.php:153 #: actions/version.php:153
#, php-format #, php-format
@ -4150,11 +4151,11 @@ msgstr ""
#: actions/version.php:196 lib/action.php:747 #: actions/version.php:196 lib/action.php:747
msgid "Version" msgid "Version"
msgstr "النسخة" msgstr "النسخه"
#: actions/version.php:197 #: actions/version.php:197
msgid "Author(s)" msgid "Author(s)"
msgstr "المؤلف(ون)" msgstr "المؤلف/ين"
#: classes/File.php:144 #: classes/File.php:144
#, php-format #, php-format
@ -4175,15 +4176,15 @@ msgstr ""
#: classes/Group_member.php:41 #: classes/Group_member.php:41
msgid "Group join failed." msgid "Group join failed."
msgstr "الانضمام للمجموعه فشل." msgstr "دخول الجروپ فشل."
#: classes/Group_member.php:53 #: classes/Group_member.php:53
msgid "Not part of group." msgid "Not part of group."
msgstr "ليس جزءا من المجموعه." msgstr "مش جزء من الجروپ."
#: classes/Group_member.php:60 #: classes/Group_member.php:60
msgid "Group leave failed." msgid "Group leave failed."
msgstr "ترك المجموعه فشل." msgstr "الخروج من الجروپ فشل."
#: classes/Login_token.php:76 #: classes/Login_token.php:76
#, php-format #, php-format
@ -4244,7 +4245,7 @@ msgstr "مشكله أثناء حفظ الإشعار."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
#: classes/Notice.php:1231 #: classes/Notice.php:1271
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "آر تى @%1$s %2$s" msgstr "آر تى @%1$s %2$s"
@ -4254,11 +4255,11 @@ msgstr "آر تى @%1$s %2$s"
msgid "Welcome to %1$s, @%2$s!" msgid "Welcome to %1$s, @%2$s!"
msgstr "أهلا بكم فى %1$s يا @%2$s!" msgstr "أهلا بكم فى %1$s يا @%2$s!"
#: classes/User_group.php:380 #: classes/User_group.php:413
msgid "Could not create group." msgid "Could not create group."
msgstr "تعذّر إنشاء المجموعه." msgstr "تعذّر إنشاء المجموعه."
#: classes/User_group.php:409 #: classes/User_group.php:442
msgid "Could not set group membership." msgid "Could not set group membership."
msgstr "تعذّر ضبط عضويه المجموعه." msgstr "تعذّر ضبط عضويه المجموعه."
@ -4485,7 +4486,7 @@ msgstr ""
#: lib/adminpanelaction.php:107 #: lib/adminpanelaction.php:107
msgid "Changes to that panel are not allowed." msgid "Changes to that panel are not allowed."
msgstr "التغييرات لهذه اللوحه غير مسموح بها." msgstr "التغييرات مش مسموحه للـ لوحه دى."
#: lib/adminpanelaction.php:206 #: lib/adminpanelaction.php:206
msgid "showForm() not implemented." msgid "showForm() not implemented."
@ -4550,11 +4551,11 @@ msgstr ""
#: lib/applicationeditform.php:207 #: lib/applicationeditform.php:207
msgid "Describe your application" msgid "Describe your application"
msgstr "اوصف تطبيقك" msgstr "اوصف الapplication بتاعتك"
#: lib/applicationeditform.php:216 #: lib/applicationeditform.php:216
msgid "Source URL" msgid "Source URL"
msgstr "مسار المصدر" msgstr "Source URL"
#: lib/applicationeditform.php:218 #: lib/applicationeditform.php:218
msgid "URL of the homepage of this application" msgid "URL of the homepage of this application"
@ -4598,7 +4599,7 @@ msgstr ""
#: lib/applicationlist.php:154 #: lib/applicationlist.php:154
msgid "Revoke" msgid "Revoke"
msgstr "اسحب" msgstr "بطّل"
#: lib/attachmentlist.php:87 #: lib/attachmentlist.php:87
msgid "Attachments" msgid "Attachments"
@ -4622,11 +4623,11 @@ msgstr "وسوم هذا المرفق"
#: lib/authenticationplugin.php:218 lib/authenticationplugin.php:223 #: lib/authenticationplugin.php:218 lib/authenticationplugin.php:223
msgid "Password changing failed" msgid "Password changing failed"
msgstr "تغيير كلمه السر فشل" msgstr "تغيير الپاسوورد فشل"
#: lib/authenticationplugin.php:233 #: lib/authenticationplugin.php:233
msgid "Password changing is not allowed" msgid "Password changing is not allowed"
msgstr "تغيير كلمه السر غير مسموح به" msgstr "تغيير الپاسوورد مش مسموح"
#: lib/channel.php:138 lib/channel.php:158 #: lib/channel.php:138 lib/channel.php:158
msgid "Command results" msgid "Command results"
@ -4647,7 +4648,7 @@ msgstr ""
#: lib/command.php:88 #: lib/command.php:88
#, php-format #, php-format
msgid "Could not find a user with nickname %s" msgid "Could not find a user with nickname %s"
msgstr "لم يمكن إيجاد مستخدم بالاسم %s" msgstr "ما نفعش يلاقى يوزر بإسم %s"
#: lib/command.php:92 #: lib/command.php:92
msgid "It does not make a lot of sense to nudge yourself!" msgid "It does not make a lot of sense to nudge yourself!"
@ -4656,7 +4657,7 @@ msgstr ""
#: lib/command.php:99 #: lib/command.php:99
#, php-format #, php-format
msgid "Nudge sent to %s" msgid "Nudge sent to %s"
msgstr "التنبيه تم إرساله إلى %s" msgstr "Nudge اتبعتت لـ %s"
#: lib/command.php:126 #: lib/command.php:126
#, php-format #, php-format
@ -4671,7 +4672,7 @@ msgstr ""
#: lib/command.php:152 lib/command.php:390 lib/command.php:451 #: lib/command.php:152 lib/command.php:390 lib/command.php:451
msgid "Notice with that id does not exist" msgid "Notice with that id does not exist"
msgstr "الملاحظه بهذا الرقم غير موجودة" msgstr "الملاحظه بالـID ده مالهاش وجود"
#: lib/command.php:168 lib/command.php:406 lib/command.php:467 #: lib/command.php:168 lib/command.php:406 lib/command.php:467
#: lib/command.php:523 #: lib/command.php:523
@ -4684,12 +4685,12 @@ msgstr ""
#: lib/command.php:217 #: lib/command.php:217
msgid "You are already a member of that group" msgid "You are already a member of that group"
msgstr "أنت بالفعل عضو فى هذه المجموعة" msgstr "انت اصلا عضو فى الجروپ ده"
#: lib/command.php:231 #: lib/command.php:231
#, php-format #, php-format
msgid "Could not join user %s to group %s" msgid "Could not join user %s to group %s"
msgstr "لم يمكن ضم المستخدم %s إلى المجموعه %s" msgstr "ما نفعش يدخل اليوزر %s لجروپ %s"
#: lib/command.php:236 #: lib/command.php:236
#, php-format #, php-format
@ -4699,12 +4700,12 @@ msgstr "%s انضم إلى مجموعه %s"
#: lib/command.php:275 #: lib/command.php:275
#, php-format #, php-format
msgid "Could not remove user %s to group %s" msgid "Could not remove user %s to group %s"
msgstr "لم يمكن إزاله المستخدم %s من المجموعه %s" msgstr "ما نفعش يشيل اليوزر %s لجروپ %s"
#: lib/command.php:280 #: lib/command.php:280
#, php-format #, php-format
msgid "%s left group %s" msgid "%s left group %s"
msgstr "%s ترك المجموعه %s" msgstr "%s ساب الجروپ %s"
#: lib/command.php:309 #: lib/command.php:309
#, php-format #, php-format
@ -4734,7 +4735,7 @@ msgstr ""
#: lib/command.php:367 #: lib/command.php:367
#, php-format #, php-format
msgid "Direct message to %s sent" msgid "Direct message to %s sent"
msgstr "رساله مباشره إلى %s تم إرسالها" msgstr "رساله مباشره اتبعتت لـ %s"
#: lib/command.php:369 #: lib/command.php:369
msgid "Error sending direct message." msgid "Error sending direct message."
@ -4742,7 +4743,7 @@ msgstr ""
#: lib/command.php:413 #: lib/command.php:413
msgid "Cannot repeat your own notice" msgid "Cannot repeat your own notice"
msgstr "لا يمكنك تكرار ملاحظتك الخاصة" msgstr "الملاحظه بتاعتك مش نافعه تتكرر"
#: lib/command.php:418 #: lib/command.php:418
msgid "Already repeated that notice" msgid "Already repeated that notice"
@ -4931,7 +4932,7 @@ msgstr ""
#: lib/connectsettingsaction.php:120 #: lib/connectsettingsaction.php:120
msgid "Connections" msgid "Connections"
msgstr "اتصالات" msgstr "كونيكشونات (Connections)"
#: lib/connectsettingsaction.php:121 #: lib/connectsettingsaction.php:121
msgid "Authorized connected applications" msgid "Authorized connected applications"
@ -5127,7 +5128,7 @@ msgstr "[%s]"
#: lib/jabber.php:400 #: lib/jabber.php:400
#, php-format #, php-format
msgid "Unknown inbox source %d." msgid "Unknown inbox source %d."
msgstr "مصدر صندوق وارد غير معروف %d." msgstr "مصدر الـinbox مش معروف %d."
#: lib/joinform.php:114 #: lib/joinform.php:114
msgid "Join" msgid "Join"
@ -5189,7 +5190,7 @@ msgstr ""
#: lib/mail.php:258 #: lib/mail.php:258
#, php-format #, php-format
msgid "Bio: %s" msgid "Bio: %s"
msgstr "السيرة: %s" msgstr "عن نفسك: %s"
#: lib/mail.php:286 #: lib/mail.php:286
#, php-format #, php-format
@ -5342,7 +5343,7 @@ msgstr ""
#: lib/mailhandler.php:228 #: lib/mailhandler.php:228
#, php-format #, php-format
msgid "Unsupported message type: %s" msgid "Unsupported message type: %s"
msgstr "نوع رساله غير مدعوم: %s" msgstr "نوع رساله مش مدعوم: %s"
#: lib/mediafile.php:98 lib/mediafile.php:123 #: lib/mediafile.php:98 lib/mediafile.php:123
msgid "There was a database error while saving your file. Please try again." msgid "There was a database error while saving your file. Please try again."
@ -5384,7 +5385,7 @@ msgstr ""
#: lib/mediafile.php:201 lib/mediafile.php:237 #: lib/mediafile.php:201 lib/mediafile.php:237
msgid "Could not determine file's MIME type." msgid "Could not determine file's MIME type."
msgstr "لم يمكن تحديد نوع MIME للملف." msgstr "مش نافع يتحدد نوع الـMIME بتاع الفايل."
#: lib/mediafile.php:270 #: lib/mediafile.php:270
#, php-format #, php-format
@ -5427,11 +5428,11 @@ msgstr "أرفق ملفًا"
#: lib/noticeform.php:212 #: lib/noticeform.php:212
msgid "Share my location" msgid "Share my location"
msgstr "شارك موقعى" msgstr "اعمل مشاركه لمكانى"
#: lib/noticeform.php:215 #: lib/noticeform.php:215
msgid "Do not share my location" msgid "Do not share my location"
msgstr "لا تشارك موقعي" msgstr "ما تعملش مشاركه لمكانى"
#: lib/noticeform.php:216 #: lib/noticeform.php:216
msgid "" msgid ""
@ -5555,7 +5556,7 @@ msgstr ""
#: lib/plugin.php:114 #: lib/plugin.php:114
msgid "Unknown" msgid "Unknown"
msgstr "غير معروف" msgstr "مش معروف"
#: lib/profileaction.php:109 lib/profileaction.php:192 lib/subgroupnav.php:82 #: lib/profileaction.php:109 lib/profileaction.php:192 lib/subgroupnav.php:82
msgid "Subscriptions" msgid "Subscriptions"
@ -5790,47 +5791,47 @@ msgstr "رسالة"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:871
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "قبل لحظات قليلة" msgstr "قبل لحظات قليلة"
#: lib/util.php:869 #: lib/util.php:873
msgid "about a minute ago" msgid "about a minute ago"
msgstr "قبل دقيقه تقريبًا" msgstr "قبل دقيقه تقريبًا"
#: lib/util.php:871 #: lib/util.php:875
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "" msgstr ""
#: lib/util.php:873 #: lib/util.php:877
msgid "about an hour ago" msgid "about an hour ago"
msgstr "قبل ساعه تقريبًا" msgstr "قبل ساعه تقريبًا"
#: lib/util.php:875 #: lib/util.php:879
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "" msgstr ""
#: lib/util.php:877 #: lib/util.php:881
msgid "about a day ago" msgid "about a day ago"
msgstr "قبل يوم تقريبا" msgstr "قبل يوم تقريبا"
#: lib/util.php:879 #: lib/util.php:883
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "" msgstr ""
#: lib/util.php:881 #: lib/util.php:885
msgid "about a month ago" msgid "about a month ago"
msgstr "قبل شهر تقريبًا" msgstr "قبل شهر تقريبًا"
#: lib/util.php:883 #: lib/util.php:887
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "" msgstr ""
#: lib/util.php:885 #: lib/util.php:889
msgid "about a year ago" msgid "about a year ago"
msgstr "قبل سنه تقريبًا" msgstr "قبل سنه تقريبًا"

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:40+0000\n" "PO-Revision-Date: 2010-02-11 08:14:17+0000\n"
"Language-Team: Bulgarian\n" "Language-Team: Bulgarian\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: bg\n" "X-Language-Code: bg\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -30,7 +30,6 @@ msgid "Site access settings"
msgstr "Запазване настройките на сайта" msgstr "Запазване настройките на сайта"
#: actions/accessadminpanel.php:158 #: actions/accessadminpanel.php:158
#, fuzzy
msgid "Registration" msgid "Registration"
msgstr "Регистриране" msgstr "Регистриране"
@ -107,9 +106,9 @@ msgid "No such user."
msgstr "Няма такъв потребител" msgstr "Няма такъв потребител"
#: actions/all.php:84 #: actions/all.php:84
#, fuzzy, php-format #, php-format
msgid "%1$s and friends, page %2$d" msgid "%1$s and friends, page %2$d"
msgstr "Блокирани за %s, страница %d" msgstr "%1$s и приятели, страница %2$d"
#: actions/all.php:86 actions/all.php:167 actions/allrss.php:115 #: actions/all.php:86 actions/all.php:167 actions/allrss.php:115
#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115 #: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
@ -191,7 +190,7 @@ msgstr "Бележки от %1$s и приятели в %2$s."
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "Не е открит методът в API." msgstr "Не е открит методът в API."
@ -425,9 +424,9 @@ msgstr "Неправилен псевдоним: \"%s\""
#: actions/apigroupcreate.php:273 actions/editgroup.php:228 #: actions/apigroupcreate.php:273 actions/editgroup.php:228
#: actions/newgroup.php:172 #: actions/newgroup.php:172
#, fuzzy, php-format #, php-format
msgid "Alias \"%s\" already in use. Try another one." msgid "Alias \"%s\" already in use. Try another one."
msgstr "Опитайте друг псевдоним, този вече е зает." msgstr "Псевдонимът \"%s\" вече е зает. Опитайте друг."
#: actions/apigroupcreate.php:286 actions/editgroup.php:234 #: actions/apigroupcreate.php:286 actions/editgroup.php:234
#: actions/newgroup.php:178 #: actions/newgroup.php:178
@ -817,7 +816,7 @@ msgstr "Да не се блокира този потребител"
msgid "Yes" msgid "Yes"
msgstr "Да" msgstr "Да"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Блокиране на потребителя" msgstr "Блокиране на потребителя"
@ -902,9 +901,8 @@ msgid "Couldn't delete email confirmation."
msgstr "Грешка при изтриване потвърждението по е-поща." msgstr "Грешка при изтриване потвърждението по е-поща."
#: actions/confirmaddress.php:144 #: actions/confirmaddress.php:144
#, fuzzy
msgid "Confirm address" msgid "Confirm address"
msgstr "Потвърждаване на адреса" msgstr "Потвърждаване на адрес"
#: actions/confirmaddress.php:159 #: actions/confirmaddress.php:159
#, php-format #, php-format
@ -1598,7 +1596,7 @@ msgstr "Потребителят вече е блокиран за групат
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Потребителят не членува в групата." msgstr "Потребителят не членува в групата."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "Блокиране на потребителя" msgstr "Блокиране на потребителя"
@ -1701,20 +1699,20 @@ msgstr "Списък с потребителите в тази група."
msgid "Admin" msgid "Admin"
msgstr "Настройки" msgstr "Настройки"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Блокиране" msgstr "Блокиране"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
#, fuzzy #, fuzzy
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "За да редактирате групата, трябва да сте й администратор." msgstr "За да редактирате групата, трябва да сте й администратор."
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2057,9 +2055,9 @@ msgid "You are not a member of that group."
msgstr "Не членувате в тази група." msgstr "Не членувате в тази група."
#: actions/leavegroup.php:127 #: actions/leavegroup.php:127
#, fuzzy, php-format #, php-format
msgid "%1$s left group %2$s" msgid "%1$s left group %2$s"
msgstr "%s напусна групата %s" msgstr "%1$s напусна групата %2$s"
#: actions/login.php:80 actions/otp.php:62 actions/register.php:137 #: actions/login.php:80 actions/otp.php:62 actions/register.php:137
msgid "Already logged in." msgid "Already logged in."
@ -2112,21 +2110,21 @@ msgstr ""
"Влезте с име и парола. Нямате такива? [Регистрирайте](%%action.register%%) " "Влезте с име и парола. Нямате такива? [Регистрирайте](%%action.register%%) "
"нова сметка или опитайте с [OpenID](%%action.openidlogin%%). " "нова сметка или опитайте с [OpenID](%%action.openidlogin%%). "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "Потребителят вече е блокиран за групата." msgstr "Потребителят вече е блокиран за групата."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Грешка при проследяване — потребителят не е намерен." msgstr "Грешка при проследяване — потребителят не е намерен."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "За да редактирате групата, трябва да сте й администратор." msgstr "За да редактирате групата, трябва да сте й администратор."
@ -2329,8 +2327,8 @@ msgstr "вид съдържание "
msgid "Only " msgid "Only "
msgstr "Само " msgstr "Само "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Неподдържан формат на данните" msgstr "Неподдържан формат на данните"
@ -2343,7 +2341,6 @@ msgid "Notice Search"
msgstr "Търсене на бележки" msgstr "Търсене на бележки"
#: actions/othersettings.php:60 #: actions/othersettings.php:60
#, fuzzy
msgid "Other settings" msgid "Other settings"
msgstr "Други настройки" msgstr "Други настройки"
@ -2619,7 +2616,6 @@ msgid "When to use SSL"
msgstr "Кога да се използва SSL" msgstr "Кога да се използва SSL"
#: actions/pathsadminpanel.php:335 #: actions/pathsadminpanel.php:335
#, fuzzy
msgid "SSL server" msgid "SSL server"
msgstr "SSL-сървър" msgstr "SSL-сървър"
@ -3095,7 +3091,7 @@ msgid ""
msgstr " освен тези лични данни: парола, е-поща, месинджър, телефон." msgstr " освен тези лични данни: парола, е-поща, месинджър, телефон."
#: actions/register.php:538 #: actions/register.php:538
#, fuzzy, php-format #, php-format
msgid "" msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may " "Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
"want to...\n" "want to...\n"
@ -3112,9 +3108,9 @@ msgid ""
"\n" "\n"
"Thanks for signing up and we hope you enjoy using this service." "Thanks for signing up and we hope you enjoy using this service."
msgstr "" msgstr ""
"Поздравления, %s! И добре дошли в %%%%site.name%%%%! от тук можете да...\n" "Поздравления, %1$s! И добре дошли в %%%%site.name%%%%! от тук можете да...\n"
"\n" "\n"
"* Отидете в [профила си](%s) и да публикувате първата си бележка.\n" "* Отидете в [профила си](%2$s) и да публикувате първата си бележка.\n"
"* Добавите [адрес в Jabber/GTalk](%%%%action.imsettings%%%%), за да " "* Добавите [адрес в Jabber/GTalk](%%%%action.imsettings%%%%), за да "
"изпращате бележки от програмата си за моментни съобщения.\n" "изпращате бележки от програмата си за моментни съобщения.\n"
"* [Търсите хора](%%%%action.peoplesearch%%%%), които познавате или с които " "* [Търсите хора](%%%%action.peoplesearch%%%%), които познавате или с които "
@ -3328,18 +3324,16 @@ msgstr "Бележката няма профил"
#: actions/showapplication.php:159 lib/applicationeditform.php:180 #: actions/showapplication.php:159 lib/applicationeditform.php:180
msgid "Icon" msgid "Icon"
msgstr "" msgstr "Икона"
#: actions/showapplication.php:169 actions/version.php:195 #: actions/showapplication.php:169 actions/version.php:195
#: lib/applicationeditform.php:195 #: lib/applicationeditform.php:195
#, fuzzy
msgid "Name" msgid "Name"
msgstr "Псевдоним" msgstr "Име"
#: actions/showapplication.php:178 lib/applicationeditform.php:222 #: actions/showapplication.php:178 lib/applicationeditform.php:222
#, fuzzy
msgid "Organization" msgid "Organization"
msgstr "Страниране" msgstr "Организация"
#: actions/showapplication.php:187 actions/version.php:198 #: actions/showapplication.php:187 actions/version.php:198
#: lib/applicationeditform.php:209 lib/groupeditform.php:172 #: lib/applicationeditform.php:209 lib/groupeditform.php:172
@ -3401,9 +3395,9 @@ msgid "Are you sure you want to reset your consumer key and secret?"
msgstr "Наистина ли искате да изтриете тази бележка?" msgstr "Наистина ли искате да изтриете тази бележка?"
#: actions/showfavorites.php:79 #: actions/showfavorites.php:79
#, fuzzy, php-format #, php-format
msgid "%1$s's favorite notices, page %2$d" msgid "%1$s's favorite notices, page %2$d"
msgstr "Любими бележки на %s" msgstr "Любими бележки на %1$s, страница %2$d"
#: actions/showfavorites.php:132 #: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices." msgid "Could not retrieve favorite notices."
@ -3466,7 +3460,7 @@ msgstr "Профил на групата"
#: actions/showgroup.php:263 actions/tagother.php:118 #: actions/showgroup.php:263 actions/tagother.php:118
#: actions/userauthorization.php:175 lib/userprofile.php:177 #: actions/userauthorization.php:175 lib/userprofile.php:177
msgid "URL" msgid "URL"
msgstr "" msgstr "URL"
#: actions/showgroup.php:274 actions/tagother.php:128 #: actions/showgroup.php:274 actions/tagother.php:128
#: actions/userauthorization.php:187 lib/userprofile.php:194 #: actions/userauthorization.php:187 lib/userprofile.php:194
@ -3475,7 +3469,7 @@ msgstr "Бележка"
#: actions/showgroup.php:284 lib/groupeditform.php:184 #: actions/showgroup.php:284 lib/groupeditform.php:184
msgid "Aliases" msgid "Aliases"
msgstr "" msgstr "Псевдоними"
#: actions/showgroup.php:293 #: actions/showgroup.php:293
msgid "Group actions" msgid "Group actions"
@ -3661,9 +3655,9 @@ msgid "You must have a valid contact email address."
msgstr "Адресът на е-поща за контакт е задължителен" msgstr "Адресът на е-поща за контакт е задължителен"
#: actions/siteadminpanel.php:158 #: actions/siteadminpanel.php:158
#, fuzzy, php-format #, php-format
msgid "Unknown language \"%s\"." msgid "Unknown language \"%s\"."
msgstr "Непознат език \"%s\"" msgstr "Непознат език \"%s\"."
#: actions/siteadminpanel.php:165 #: actions/siteadminpanel.php:165
msgid "Invalid snapshot report URL." msgid "Invalid snapshot report URL."
@ -4300,9 +4294,9 @@ msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr "" msgstr ""
#: actions/version.php:73 #: actions/version.php:73
#, fuzzy, php-format #, php-format
msgid "StatusNet %s" msgid "StatusNet %s"
msgstr "Статистики" msgstr "StatusNet %s"
#: actions/version.php:153 #: actions/version.php:153
#, php-format #, php-format
@ -4340,17 +4334,15 @@ msgstr ""
#: actions/version.php:189 #: actions/version.php:189
msgid "Plugins" msgid "Plugins"
msgstr "" msgstr "Приставки"
#: actions/version.php:196 lib/action.php:747 #: actions/version.php:196 lib/action.php:747
#, fuzzy
msgid "Version" msgid "Version"
msgstr "Сесии" msgstr "Версия"
#: actions/version.php:197 #: actions/version.php:197
#, fuzzy
msgid "Author(s)" msgid "Author(s)"
msgstr "Автор" msgstr "Автор(и)"
#: classes/File.php:144 #: classes/File.php:144
#, php-format #, php-format
@ -4450,7 +4442,7 @@ msgstr "Проблем при записване на бележката."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Грешка в базата от данни — отговор при вмъкването: %s" msgstr "Грешка в базата от данни — отговор при вмъкването: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -5418,11 +5410,9 @@ msgstr ""
"Може да смените адреса и настройките за уведомяване по е-поща на %8$s\n" "Може да смените адреса и настройките за уведомяване по е-поща на %8$s\n"
#: lib/mail.php:258 #: lib/mail.php:258
#, fuzzy, php-format #, php-format
msgid "Bio: %s" msgid "Bio: %s"
msgstr "" msgstr "Биография: %s"
"Биография: %s\n"
"\n"
#: lib/mail.php:286 #: lib/mail.php:286
#, php-format #, php-format
@ -6039,47 +6029,47 @@ msgstr "Съобщение"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "преди няколко секунди" msgstr "преди няколко секунди"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "преди около минута" msgstr "преди около минута"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "преди около %d минути" msgstr "преди около %d минути"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "преди около час" msgstr "преди около час"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "преди около %d часа" msgstr "преди около %d часа"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "преди около ден" msgstr "преди около ден"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "преди около %d дни" msgstr "преди около %d дни"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "преди около месец" msgstr "преди около месец"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "преди около %d месеца" msgstr "преди около %d месеца"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "преди около година" msgstr "преди около година"

View File

@ -1,5 +1,6 @@
# Translation of StatusNet to Catalan # Translation of StatusNet to Catalan
# #
# Author@translatewiki.net: Aleator
# Author@translatewiki.net: McDutchie # Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Toniher # Author@translatewiki.net: Toniher
# -- # --
@ -9,12 +10,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:45+0000\n" "PO-Revision-Date: 2010-02-11 08:14:20+0000\n"
"Language-Team: Catalan\n" "Language-Team: Catalan\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ca\n" "X-Language-Code: ca\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -195,7 +196,7 @@ msgstr "Actualitzacions de %1$s i amics a %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "No s'ha trobat el mètode API!" msgstr "No s'ha trobat el mètode API!"
@ -833,7 +834,7 @@ msgstr "No bloquis l'usuari"
msgid "Yes" msgid "Yes"
msgstr "Sí" msgstr "Sí"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Bloquejar aquest usuari" msgstr "Bloquejar aquest usuari"
@ -1613,7 +1614,7 @@ msgstr "Un usuari t'ha bloquejat."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "L'usuari no és membre del grup." msgstr "L'usuari no és membre del grup."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Bloca l'usuari del grup" msgstr "Bloca l'usuari del grup"
@ -1714,19 +1715,19 @@ msgstr "La llista dels usuaris d'aquest grup."
msgid "Admin" msgid "Admin"
msgstr "Admin" msgstr "Admin"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Bloca" msgstr "Bloca"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Fes l'usuari un administrador del grup" msgstr "Fes l'usuari un administrador del grup"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Fes-lo administrador" msgstr "Fes-lo administrador"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Fes l'usuari administrador" msgstr "Fes l'usuari administrador"
@ -2131,21 +2132,21 @@ msgstr ""
"tens un nom d'usuari? [Crea](%%action.register%%) un nou compte o prova " "tens un nom d'usuari? [Crea](%%action.register%%) un nou compte o prova "
"[OpenID] (%%action.openidlogin%%)." "[OpenID] (%%action.openidlogin%%)."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Només un administrador poc fer a un altre usuari administrador." msgstr "Només un administrador poc fer a un altre usuari administrador."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%s ja és un administrador del grup «%s»." msgstr "%s ja és un administrador del grup «%s»."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "No s'ha pogut eliminar l'usuari %s del grup %s" msgstr "No s'ha pogut eliminar l'usuari %s del grup %s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "No es pot fer %s un administrador del grup %s" msgstr "No es pot fer %s un administrador del grup %s"
@ -2349,8 +2350,8 @@ msgstr "tipus de contingut "
msgid "Only " msgid "Only "
msgstr "Només " msgstr "Només "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Format de data no suportat." msgstr "Format de data no suportat."
@ -4502,7 +4503,7 @@ msgstr "Problema en guardar l'avís."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Error de BD en inserir resposta: %s" msgstr "Error de BD en inserir resposta: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -5119,8 +5120,8 @@ msgstr "No sou membre de cap grup."
#: lib/command.php:714 #: lib/command.php:714
msgid "You are a member of this group:" msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:" msgid_plural "You are a member of these groups:"
msgstr[0] "No sou un membre del grup." msgstr[0] "Sou un membre d'aquest grup:"
msgstr[1] "No sou un membre del grup." msgstr[1] "Sou un membre d'aquests grups:"
#: lib/command.php:728 #: lib/command.php:728
msgid "" msgid ""
@ -6084,47 +6085,47 @@ msgstr "Missatge"
msgid "Moderate" msgid "Moderate"
msgstr "Modera" msgstr "Modera"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "fa pocs segons" msgstr "fa pocs segons"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "fa un minut" msgstr "fa un minut"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "fa %d minuts" msgstr "fa %d minuts"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "fa una hora" msgstr "fa una hora"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "fa %d hores" msgstr "fa %d hores"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "fa un dia" msgstr "fa un dia"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "fa %d dies" msgstr "fa %d dies"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "fa un mes" msgstr "fa un mes"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "fa %d mesos" msgstr "fa %d mesos"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "fa un any" msgstr "fa un any"

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:47+0000\n" "PO-Revision-Date: 2010-02-11 08:14:23+0000\n"
"Language-Team: Czech\n" "Language-Team: Czech\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: cs\n" "X-Language-Code: cs\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -196,7 +196,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "Potvrzující kód nebyl nalezen" msgstr "Potvrzující kód nebyl nalezen"
@ -834,7 +834,7 @@ msgstr "Žádný takový uživatel."
msgid "Yes" msgid "Yes"
msgstr "Ano" msgstr "Ano"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Zablokovat tohoto uživatele" msgstr "Zablokovat tohoto uživatele"
@ -1619,7 +1619,7 @@ msgstr "Uživatel nemá profil."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Neodeslal jste nám profil" msgstr "Neodeslal jste nám profil"
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "Žádný takový uživatel." msgstr "Žádný takový uživatel."
@ -1723,19 +1723,19 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "" msgstr ""
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2106,21 +2106,21 @@ msgstr ""
"[Registrovat](%%action.register%%) nový účet, nebo vyzkoušejte [OpenID](%%" "[Registrovat](%%action.register%%) nový účet, nebo vyzkoušejte [OpenID](%%"
"action.openidlogin%%)." "action.openidlogin%%)."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "Uživatel nemá profil." msgstr "Uživatel nemá profil."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Nelze vytvořit OpenID z: %s" msgstr "Nelze vytvořit OpenID z: %s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Uživatel nemá profil." msgstr "Uživatel nemá profil."
@ -2319,8 +2319,8 @@ msgstr "Připojit"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4444,7 +4444,7 @@ msgstr "Problém při ukládání sdělení"
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Chyba v DB při vkládání odpovědi: %s" msgstr "Chyba v DB při vkládání odpovědi: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -6056,47 +6056,47 @@ msgstr "Zpráva"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "před pár sekundami" msgstr "před pár sekundami"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "asi před minutou" msgstr "asi před minutou"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "asi před %d minutami" msgstr "asi před %d minutami"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "asi před hodinou" msgstr "asi před hodinou"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "asi před %d hodinami" msgstr "asi před %d hodinami"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "asi přede dnem" msgstr "asi přede dnem"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "před %d dny" msgstr "před %d dny"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "asi před měsícem" msgstr "asi před měsícem"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "asi před %d mesíci" msgstr "asi před %d mesíci"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "asi před rokem" msgstr "asi před rokem"

View File

@ -3,6 +3,7 @@
# Author@translatewiki.net: Bavatar # Author@translatewiki.net: Bavatar
# Author@translatewiki.net: Lutzgh # Author@translatewiki.net: Lutzgh
# Author@translatewiki.net: March # Author@translatewiki.net: March
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Pill # Author@translatewiki.net: Pill
# Author@translatewiki.net: Umherirrender # Author@translatewiki.net: Umherirrender
# -- # --
@ -12,12 +13,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:50+0000\n" "PO-Revision-Date: 2010-02-11 08:14:26+0000\n"
"Language-Team: German\n" "Language-Team: German\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: de\n" "X-Language-Code: de\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -207,7 +208,7 @@ msgstr "Aktualisierungen von %1$s und Freunden auf %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "API-Methode nicht gefunden." msgstr "API-Methode nicht gefunden."
@ -831,7 +832,7 @@ msgstr "Diesen Benutzer freigeben"
msgid "Yes" msgid "Yes"
msgstr "Ja" msgstr "Ja"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Diesen Benutzer blockieren" msgstr "Diesen Benutzer blockieren"
@ -1606,7 +1607,7 @@ msgstr "Dieser Nutzer ist bereits von der Gruppe gesperrt"
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Nutzer ist kein Mitglied dieser Gruppe." msgstr "Nutzer ist kein Mitglied dieser Gruppe."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Benutzerzugang zu der Gruppe blockieren" msgstr "Benutzerzugang zu der Gruppe blockieren"
@ -1705,19 +1706,19 @@ msgstr "Liste der Benutzer in dieser Gruppe."
msgid "Admin" msgid "Admin"
msgstr "Admin" msgstr "Admin"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Blockieren" msgstr "Blockieren"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Benutzer zu einem Admin dieser Gruppe ernennen" msgstr "Benutzer zu einem Admin dieser Gruppe ernennen"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Zum Admin ernennen" msgstr "Zum Admin ernennen"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Diesen Benutzer zu einem Admin ernennen" msgstr "Diesen Benutzer zu einem Admin ernennen"
@ -2127,21 +2128,21 @@ msgstr ""
"Melde dich mit Nutzernamen und Passwort an. Du hast noch keinen Nutzernamen? " "Melde dich mit Nutzernamen und Passwort an. Du hast noch keinen Nutzernamen? "
"[Registriere](%%action.register%%) ein neues Konto." "[Registriere](%%action.register%%) ein neues Konto."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Nur Administratoren können andere Nutzer zu Administratoren ernennen." msgstr "Nur Administratoren können andere Nutzer zu Administratoren ernennen."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%s ist bereits ein Administrator der Gruppe „%s“." msgstr "%s ist bereits ein Administrator der Gruppe „%s“."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Konnte Benutzer %s aus der Gruppe %s nicht entfernen" msgstr "Konnte Benutzer %s aus der Gruppe %s nicht entfernen"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Konnte %s nicht zum Administrator der Gruppe %s machen" msgstr "Konnte %s nicht zum Administrator der Gruppe %s machen"
@ -2346,8 +2347,8 @@ msgstr "Content-Typ "
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Kein unterstütztes Datenformat." msgstr "Kein unterstütztes Datenformat."
@ -2360,7 +2361,6 @@ msgid "Notice Search"
msgstr "Nachrichtensuche" msgstr "Nachrichtensuche"
#: actions/othersettings.php:60 #: actions/othersettings.php:60
#, fuzzy
msgid "Other settings" msgid "Other settings"
msgstr "Andere Einstellungen" msgstr "Andere Einstellungen"
@ -2393,9 +2393,8 @@ msgid "URL shortening service is too long (max 50 chars)."
msgstr "URL-Auto-Kürzungs-Dienst ist zu lang (max. 50 Zeichen)." msgstr "URL-Auto-Kürzungs-Dienst ist zu lang (max. 50 Zeichen)."
#: actions/otp.php:69 #: actions/otp.php:69
#, fuzzy
msgid "No user ID specified." msgid "No user ID specified."
msgstr "Keine Gruppe angegeben" msgstr "Keine Benutzer ID angegeben"
#: actions/otp.php:83 #: actions/otp.php:83
#, fuzzy #, fuzzy
@ -2418,9 +2417,9 @@ msgid "Login token expired."
msgstr "An Seite anmelden" msgstr "An Seite anmelden"
#: actions/outbox.php:58 #: actions/outbox.php:58
#, fuzzy, php-format #, php-format
msgid "Outbox for %1$s - page %2$d" msgid "Outbox for %1$s - page %2$d"
msgstr "Postausgang von %s" msgstr "Postausgang für %1$s - Seite %2$d"
#: actions/outbox.php:61 #: actions/outbox.php:61
#, php-format #, php-format
@ -2531,9 +2530,8 @@ msgid "Site"
msgstr "Seite" msgstr "Seite"
#: actions/pathsadminpanel.php:238 #: actions/pathsadminpanel.php:238
#, fuzzy
msgid "Server" msgid "Server"
msgstr "Wiederherstellung" msgstr "Server"
#: actions/pathsadminpanel.php:238 #: actions/pathsadminpanel.php:238
msgid "Site's server hostname." msgid "Site's server hostname."
@ -2616,9 +2614,8 @@ msgid "SSL"
msgstr "SSL" msgstr "SSL"
#: actions/pathsadminpanel.php:323 actions/siteadminpanel.php:294 #: actions/pathsadminpanel.php:323 actions/siteadminpanel.php:294
#, fuzzy
msgid "Never" msgid "Never"
msgstr "Wiederherstellung" msgstr "Nie"
#: actions/pathsadminpanel.php:324 #: actions/pathsadminpanel.php:324
msgid "Sometimes" msgid "Sometimes"
@ -2637,7 +2634,6 @@ msgid "When to use SSL"
msgstr "Wann soll SSL verwendet werden" msgstr "Wann soll SSL verwendet werden"
#: actions/pathsadminpanel.php:335 #: actions/pathsadminpanel.php:335
#, fuzzy
msgid "SSL server" msgid "SSL server"
msgstr "SSL-Server" msgstr "SSL-Server"
@ -2962,7 +2958,7 @@ msgstr ""
#: actions/recoverpassword.php:191 #: actions/recoverpassword.php:191
msgid "Nickname or email address" msgid "Nickname or email address"
msgstr "" msgstr "Spitzname oder e-mail Adresse"
#: actions/recoverpassword.php:193 #: actions/recoverpassword.php:193
msgid "Your nickname on this server, or your registered email address." msgid "Your nickname on this server, or your registered email address."
@ -3226,20 +3222,16 @@ msgid "Couldnt get a request token."
msgstr "Konnte keinen Anfrage-Token bekommen." msgstr "Konnte keinen Anfrage-Token bekommen."
#: actions/repeat.php:57 #: actions/repeat.php:57
#, fuzzy
msgid "Only logged-in users can repeat notices." msgid "Only logged-in users can repeat notices."
msgstr "Nur der Benutzer selbst kann seinen Posteingang lesen." msgstr "Nur angemeldete Nutzer können Nachrichten wiederholen."
#: actions/repeat.php:64 actions/repeat.php:71 #: actions/repeat.php:64 actions/repeat.php:71
#, fuzzy
msgid "No notice specified." msgid "No notice specified."
msgstr "Kein Profil angegeben." msgstr "Keine Nachricht angegeen."
#: actions/repeat.php:76 #: actions/repeat.php:76
#, fuzzy
msgid "You can't repeat your own notice." msgid "You can't repeat your own notice."
msgstr "" msgstr "Du kannst deine eigene Nachricht nicht wiederholen."
"Du kannst dich nicht registrieren, wenn du die Lizenz nicht akzeptierst."
#: actions/repeat.php:90 #: actions/repeat.php:90
#, fuzzy #, fuzzy
@ -3263,9 +3255,9 @@ msgid "Replies to %s"
msgstr "Antworten an %s" msgstr "Antworten an %s"
#: actions/replies.php:127 #: actions/replies.php:127
#, fuzzy, php-format #, php-format
msgid "Replies to %1$s, page %2$d" msgid "Replies to %1$s, page %2$d"
msgstr "Antworten an %1$s auf %2$s!" msgstr "Antworten an %1$s, Seite %2$d"
#: actions/replies.php:144 #: actions/replies.php:144
#, php-format #, php-format
@ -3314,9 +3306,8 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Antworten an %1$s auf %2$s!" msgstr "Antworten an %1$s auf %2$s!"
#: actions/rsd.php:146 actions/version.php:157 #: actions/rsd.php:146 actions/version.php:157
#, fuzzy
msgid "StatusNet" msgid "StatusNet"
msgstr "Status gelöscht." msgstr "StatusNet"
#: actions/sandbox.php:65 actions/unsandbox.php:65 #: actions/sandbox.php:65 actions/unsandbox.php:65
#, fuzzy #, fuzzy
@ -4520,7 +4511,7 @@ msgstr "Problem bei Speichern der Nachricht."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Datenbankfehler beim Einfügen der Antwort: %s" msgstr "Datenbankfehler beim Einfügen der Antwort: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -5137,8 +5128,8 @@ msgstr "Du bist in keiner Gruppe Mitglied."
#: lib/command.php:714 #: lib/command.php:714
msgid "You are a member of this group:" msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:" msgid_plural "You are a member of these groups:"
msgstr[0] "Du bist kein Mitglied dieser Gruppe." msgstr[0] "Du bist Mitglied dieser Gruppe:"
msgstr[1] "Du bist kein Mitglied dieser Gruppe." msgstr[1] "Du bist Mitglied dieser Gruppen:"
#: lib/command.php:728 #: lib/command.php:728
msgid "" msgid ""
@ -6170,47 +6161,47 @@ msgstr "Nachricht"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "vor wenigen Sekunden" msgstr "vor wenigen Sekunden"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "vor einer Minute" msgstr "vor einer Minute"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "vor %d Minuten" msgstr "vor %d Minuten"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "vor einer Stunde" msgstr "vor einer Stunde"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "vor %d Stunden" msgstr "vor %d Stunden"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "vor einem Tag" msgstr "vor einem Tag"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "vor %d Tagen" msgstr "vor %d Tagen"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "vor einem Monat" msgstr "vor einem Monat"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "vor %d Monaten" msgstr "vor %d Monaten"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "vor einem Jahr" msgstr "vor einem Jahr"

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:53+0000\n" "PO-Revision-Date: 2010-02-11 08:14:30+0000\n"
"Language-Team: Greek\n" "Language-Team: Greek\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: el\n" "X-Language-Code: el\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -191,7 +191,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "Η μέθοδος του ΑΡΙ δε βρέθηκε!" msgstr "Η μέθοδος του ΑΡΙ δε βρέθηκε!"
@ -817,7 +817,7 @@ msgstr "Αδυναμία διαγραφής αυτού του μηνύματος
msgid "Yes" msgid "Yes"
msgstr "Ναι" msgstr "Ναι"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "" msgstr ""
@ -1594,7 +1594,7 @@ msgstr ""
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "" msgstr ""
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "" msgstr ""
@ -1692,20 +1692,20 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "Διαχειριστής" msgstr "Διαχειριστής"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "" msgstr ""
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
#, fuzzy #, fuzzy
msgid "Make Admin" msgid "Make Admin"
msgstr "Διαχειριστής" msgstr "Διαχειριστής"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2067,21 +2067,21 @@ msgstr ""
"ακόμα; Κάντε [εγγραφή](%%action.register%%) για ένα νέο λογαριασμό ή " "ακόμα; Κάντε [εγγραφή](%%action.register%%) για ένα νέο λογαριασμό ή "
"δοκιμάστε το [OpenID](%%action.openidlogin%%). " "δοκιμάστε το [OpenID](%%action.openidlogin%%). "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "" msgstr ""
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Αδύνατη η αποθήκευση του προφίλ." msgstr "Αδύνατη η αποθήκευση του προφίλ."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Αδύνατη η αποθήκευση του προφίλ." msgstr "Αδύνατη η αποθήκευση του προφίλ."
@ -2277,8 +2277,8 @@ msgstr "Σύνδεση"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4372,7 +4372,7 @@ msgstr ""
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Σφάλμα βάσης δεδομένων κατά την εισαγωγή απάντησης: %s" msgstr "Σφάλμα βάσης δεδομένων κατά την εισαγωγή απάντησης: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -5933,47 +5933,47 @@ msgstr "Μήνυμα"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "" msgstr ""
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "" msgstr ""
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "" msgstr ""
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "" msgstr ""
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "" msgstr ""
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "" msgstr ""
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "" msgstr ""
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "" msgstr ""
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "" msgstr ""
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "" msgstr ""

View File

@ -10,12 +10,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-14 20:05+0000\n"
"PO-Revision-Date: 2010-02-05 23:53:56+0000\n" "PO-Revision-Date: 2010-02-14 20:06:20+0000\n"
"Language-Team: British English\n" "Language-Team: British English\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62476); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: en-gb\n" "X-Language-Code: en-gb\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -169,8 +169,8 @@ msgstr ""
msgid "You and friends" msgid "You and friends"
msgstr "You and friends" msgstr "You and friends"
#: actions/allrss.php:119 actions/apitimelinefriends.php:121 #: actions/allrss.php:119 actions/apitimelinefriends.php:119
#: actions/apitimelinehome.php:122 #: actions/apitimelinehome.php:120
#, php-format #, php-format
msgid "Updates from %1$s and friends on %2$s!" msgid "Updates from %1$s and friends on %2$s!"
msgstr "Updates from %1$s and friends on %2$s!" msgstr "Updates from %1$s and friends on %2$s!"
@ -191,12 +191,12 @@ msgstr "Updates from %1$s and friends on %2$s!"
#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112 #: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137 #: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111 #: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
#: actions/apitimelinefavorites.php:146 actions/apitimelinefriends.php:155 #: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
#: actions/apitimelinegroup.php:150 actions/apitimelinehome.php:156 #: actions/apitimelinegroup.php:182 actions/apitimelinehome.php:184
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:152
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:194 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "API method not found." msgstr "API method not found."
@ -640,7 +640,7 @@ msgstr "Unsupported format."
msgid "%1$s / Favorites from %2$s" msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favourites from %2$s" msgstr "%1$s / Favourites from %2$s"
#: actions/apitimelinefavorites.php:120 #: actions/apitimelinefavorites.php:117
#, php-format #, php-format
msgid "%1$s updates favorited by %2$s / %2$s." msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s updates favourited by %2$s / %2$s." msgstr "%1$s updates favourited by %2$s / %2$s."
@ -651,7 +651,7 @@ msgstr "%1$s updates favourited by %2$s / %2$s."
msgid "%s timeline" msgid "%s timeline"
msgstr "%s timeline" msgstr "%s timeline"
#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 #: actions/apitimelinegroup.php:114 actions/apitimelineuser.php:126
#: actions/userrss.php:92 #: actions/userrss.php:92
#, php-format #, php-format
msgid "Updates from %1$s on %2$s!" msgid "Updates from %1$s on %2$s!"
@ -667,12 +667,12 @@ msgstr "%1$s / Updates mentioning %2$s"
msgid "%1$s updates that reply to updates from %2$s / %3$s." msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s updates that reply to updates from %2$s / %3$s." msgstr "%1$s updates that reply to updates from %2$s / %3$s."
#: actions/apitimelinepublic.php:107 actions/publicrss.php:103 #: actions/apitimelinepublic.php:111 actions/publicrss.php:103
#, php-format #, php-format
msgid "%s public timeline" msgid "%s public timeline"
msgstr "%s public timeline" msgstr "%s public timeline"
#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #: actions/apitimelinepublic.php:115 actions/publicrss.php:105
#, php-format #, php-format
msgid "%s updates from everyone!" msgid "%s updates from everyone!"
msgstr "%s updates from everyone!" msgstr "%s updates from everyone!"
@ -682,7 +682,7 @@ msgstr "%s updates from everyone!"
msgid "Repeated to %s" msgid "Repeated to %s"
msgstr "Repeated to %s" msgstr "Repeated to %s"
#: actions/apitimelineretweetsofme.php:112 #: actions/apitimelineretweetsofme.php:114
#, php-format #, php-format
msgid "Repeats of %s" msgid "Repeats of %s"
msgstr "Repeats of %s" msgstr "Repeats of %s"
@ -692,7 +692,7 @@ msgstr "Repeats of %s"
msgid "Notices tagged with %s" msgid "Notices tagged with %s"
msgstr "Notices tagged with %s" msgstr "Notices tagged with %s"
#: actions/apitimelinetag.php:108 actions/tagrss.php:64 #: actions/apitimelinetag.php:104 actions/tagrss.php:64
#, php-format #, php-format
msgid "Updates tagged with %1$s on %2$s!" msgid "Updates tagged with %1$s on %2$s!"
msgstr "Updates tagged with %1$s on %2$s!" msgstr "Updates tagged with %1$s on %2$s!"
@ -819,7 +819,7 @@ msgstr "Do not block this user"
msgid "Yes" msgid "Yes"
msgstr "Yes" msgstr "Yes"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Block this user" msgstr "Block this user"
@ -1235,7 +1235,7 @@ msgstr "description is too long (max %d chars)."
msgid "Could not update group." msgid "Could not update group."
msgstr "Could not update group." msgstr "Could not update group."
#: actions/editgroup.php:259 classes/User_group.php:390 #: actions/editgroup.php:259 classes/User_group.php:423
msgid "Could not create aliases." msgid "Could not create aliases."
msgstr "Could not create aliases" msgstr "Could not create aliases"
@ -1581,7 +1581,7 @@ msgstr "User is already blocked from group."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "User is not a member of group." msgstr "User is not a member of group."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "Block user" msgstr "Block user"
@ -1689,21 +1689,21 @@ msgstr "A list of the users in this group."
msgid "Admin" msgid "Admin"
msgstr "Admin" msgstr "Admin"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Block" msgstr "Block"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
#, fuzzy #, fuzzy
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "You must be an admin to edit the group" msgstr "You must be an admin to edit the group"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
#, fuzzy #, fuzzy
msgid "Make Admin" msgid "Make Admin"
msgstr "Admin" msgstr "Admin"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2103,21 +2103,21 @@ msgstr ""
"Login with your username and password. Don't have a username yet? [Register]" "Login with your username and password. Don't have a username yet? [Register]"
"(%%action.register%%) a new account." "(%%action.register%%) a new account."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "User is already blocked from group." msgstr "User is already blocked from group."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Could not remove user %s to group %s" msgstr "Could not remove user %s to group %s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "You must be an admin to edit the group" msgstr "You must be an admin to edit the group"
@ -2323,8 +2323,8 @@ msgstr "Connect"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Not a supported data format." msgstr "Not a supported data format."
@ -4501,7 +4501,7 @@ msgstr "Problem saving notice."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "DB error inserting reply: %s" msgstr "DB error inserting reply: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1271
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -4511,11 +4511,11 @@ msgstr "%1$s (%2$s)"
msgid "Welcome to %1$s, @%2$s!" msgid "Welcome to %1$s, @%2$s!"
msgstr "Welcome to %1$s, @%2$s!" msgstr "Welcome to %1$s, @%2$s!"
#: classes/User_group.php:380 #: classes/User_group.php:413
msgid "Could not create group." msgid "Could not create group."
msgstr "Could not create group." msgstr "Could not create group."
#: classes/User_group.php:409 #: classes/User_group.php:442
msgid "Could not set group membership." msgid "Could not set group membership."
msgstr "Could not set group membership." msgstr "Could not set group membership."
@ -6091,47 +6091,47 @@ msgstr "Message"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:871
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "a few seconds ago" msgstr "a few seconds ago"
#: lib/util.php:869 #: lib/util.php:873
msgid "about a minute ago" msgid "about a minute ago"
msgstr "about a minute ago" msgstr "about a minute ago"
#: lib/util.php:871 #: lib/util.php:875
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "about %d minutes ago" msgstr "about %d minutes ago"
#: lib/util.php:873 #: lib/util.php:877
msgid "about an hour ago" msgid "about an hour ago"
msgstr "about an hour ago" msgstr "about an hour ago"
#: lib/util.php:875 #: lib/util.php:879
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "about %d hours ago" msgstr "about %d hours ago"
#: lib/util.php:877 #: lib/util.php:881
msgid "about a day ago" msgid "about a day ago"
msgstr "about a day ago" msgstr "about a day ago"
#: lib/util.php:879 #: lib/util.php:883
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "about %d days ago" msgstr "about %d days ago"
#: lib/util.php:881 #: lib/util.php:885
msgid "about a month ago" msgid "about a month ago"
msgstr "about a month ago" msgstr "about a month ago"
#: lib/util.php:883 #: lib/util.php:887
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "about %d months ago" msgstr "about %d months ago"
#: lib/util.php:885 #: lib/util.php:889
msgid "about a year ago" msgid "about a year ago"
msgstr "about a year ago" msgstr "about a year ago"

File diff suppressed because it is too large Load Diff

View File

@ -10,8 +10,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:05+0000\n" "PO-Revision-Date: 2010-02-11 08:14:41+0000\n"
"Last-Translator: Ahmad Sufi Mahmudi\n" "Last-Translator: Ahmad Sufi Mahmudi\n"
"Language-Team: Persian\n" "Language-Team: Persian\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -20,7 +20,7 @@ msgstr ""
"X-Language-Code: fa\n" "X-Language-Code: fa\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
#: actions/accessadminpanel.php:54 lib/adminpanelaction.php:326 #: actions/accessadminpanel.php:54 lib/adminpanelaction.php:326
@ -200,7 +200,7 @@ msgstr "به روز رسانی از %1$ و دوستان در %2$"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "رابط مورد نظر پیدا نشد." msgstr "رابط مورد نظر پیدا نشد."
@ -822,7 +822,7 @@ msgstr "کاربر را مسدود نکن"
msgid "Yes" msgid "Yes"
msgstr "بله" msgstr "بله"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "کاربر را مسدود کن" msgstr "کاربر را مسدود کن"
@ -1597,7 +1597,7 @@ msgstr "هم اکنون دسترسی کاربر به گروه مسدود شده
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "کاربر عضو گروه نیست." msgstr "کاربر عضو گروه نیست."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "دسترسی کاربر به گروه را مسدود کن" msgstr "دسترسی کاربر به گروه را مسدود کن"
@ -1693,19 +1693,19 @@ msgstr "یک فهرست از کاربران در این گروه"
msgid "Admin" msgid "Admin"
msgstr "مدیر" msgstr "مدیر"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "بازداشتن" msgstr "بازداشتن"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "کاربر یک مدیر گروه شود" msgstr "کاربر یک مدیر گروه شود"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "مدیر شود" msgstr "مدیر شود"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "این کاربر یک مدیر شود" msgstr "این کاربر یک مدیر شود"
@ -2080,21 +2080,21 @@ msgstr ""
"با نام‌کاربری و گذزواژه‌ی خود وارد شوید. نام‌کاربری ندارید؟ یک نام‌کاربری [ثبت ]" "با نام‌کاربری و گذزواژه‌ی خود وارد شوید. نام‌کاربری ندارید؟ یک نام‌کاربری [ثبت ]"
"(%%action.register%%) کنید." "(%%action.register%%) کنید."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "فقط یک مدیر می‌تواند کاربر دیگری را مدیر کند." msgstr "فقط یک مدیر می‌تواند کاربر دیگری را مدیر کند."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%s از قبل مدیر گروه %s بود." msgstr "%s از قبل مدیر گروه %s بود."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "نمی‌توان اطلاعات عضویت %s را در گروه %s به دست آورد." msgstr "نمی‌توان اطلاعات عضویت %s را در گروه %s به دست آورد."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "نمی‌توان %s را مدیر گروه %s کرد." msgstr "نمی‌توان %s را مدیر گروه %s کرد."
@ -2301,8 +2301,8 @@ msgstr "نوع محتوا "
msgid "Only " msgid "Only "
msgstr " فقط" msgstr " فقط"
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "یک قالب دادهٔ پشتیبانی‌شده نیست." msgstr "یک قالب دادهٔ پشتیبانی‌شده نیست."
@ -4369,7 +4369,7 @@ msgstr "مشکل در ذخیره کردن آگهی."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -5917,47 +5917,47 @@ msgstr "پیام"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "چند ثانیه پیش" msgstr "چند ثانیه پیش"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "حدود یک دقیقه پیش" msgstr "حدود یک دقیقه پیش"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "حدود %d دقیقه پیش" msgstr "حدود %d دقیقه پیش"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "حدود یک ساعت پیش" msgstr "حدود یک ساعت پیش"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "حدود %d ساعت پیش" msgstr "حدود %d ساعت پیش"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "حدود یک روز پیش" msgstr "حدود یک روز پیش"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "حدود %d روز پیش" msgstr "حدود %d روز پیش"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "حدود یک ماه پیش" msgstr "حدود یک ماه پیش"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "حدود %d ماه پیش" msgstr "حدود %d ماه پیش"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "حدود یک سال پیش" msgstr "حدود یک سال پیش"

View File

@ -10,12 +10,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:02+0000\n" "PO-Revision-Date: 2010-02-11 08:14:39+0000\n"
"Language-Team: Finnish\n" "Language-Team: Finnish\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: fi\n" "X-Language-Code: fi\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -202,7 +202,7 @@ msgstr "Käyttäjän %1$s ja kavereiden päivitykset palvelussa %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "API-metodia ei löytynyt!" msgstr "API-metodia ei löytynyt!"
@ -837,7 +837,7 @@ msgstr "Älä estä tätä käyttäjää"
msgid "Yes" msgid "Yes"
msgstr "Kyllä" msgstr "Kyllä"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Estä tämä käyttäjä" msgstr "Estä tämä käyttäjä"
@ -1628,7 +1628,7 @@ msgstr "Käyttäjä on asettanut eston sinulle."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Käyttäjä ei kuulu tähän ryhmään." msgstr "Käyttäjä ei kuulu tähän ryhmään."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Estä käyttäjä ryhmästä" msgstr "Estä käyttäjä ryhmästä"
@ -1726,19 +1726,19 @@ msgstr "Lista ryhmän käyttäjistä."
msgid "Admin" msgid "Admin"
msgstr "Ylläpito" msgstr "Ylläpito"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Estä" msgstr "Estä"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Tee tästä käyttäjästä ylläpitäjä" msgstr "Tee tästä käyttäjästä ylläpitäjä"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Tee ylläpitäjäksi" msgstr "Tee ylläpitäjäksi"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Tee tästä käyttäjästä ylläpitäjä" msgstr "Tee tästä käyttäjästä ylläpitäjä"
@ -2144,21 +2144,21 @@ msgstr ""
"käyttäjätunnusta? [Rekisteröi](%%action.register%%) käyttäjätunnus tai " "käyttäjätunnusta? [Rekisteröi](%%action.register%%) käyttäjätunnus tai "
"kokeile [OpenID](%%action.openidlogin%%)-tunnuksella sisään kirjautumista. " "kokeile [OpenID](%%action.openidlogin%%)-tunnuksella sisään kirjautumista. "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Vain ylläpitäjä voi tehdä toisesta käyttäjästä ylläpitäjän." msgstr "Vain ylläpitäjä voi tehdä toisesta käyttäjästä ylläpitäjän."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%s on jo ryhmän \"%s\" ylläpitäjä." msgstr "%s on jo ryhmän \"%s\" ylläpitäjä."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Ei saatu käyttäjän %s jäsenyystietoja ryhmästä %s" msgstr "Ei saatu käyttäjän %s jäsenyystietoja ryhmästä %s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Ei voitu tehdä käyttäjästä %s ylläpitäjää ryhmään %s" msgstr "Ei voitu tehdä käyttäjästä %s ylläpitäjää ryhmään %s"
@ -2365,8 +2365,8 @@ msgstr "Yhdistä"
msgid "Only " msgid "Only "
msgstr "Vain " msgstr "Vain "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Tuo ei ole tuettu tietomuoto." msgstr "Tuo ei ole tuettu tietomuoto."
@ -4542,7 +4542,7 @@ msgstr "Ongelma päivityksen tallentamisessa."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Tietokantavirhe tallennettaessa vastausta: %s" msgstr "Tietokantavirhe tallennettaessa vastausta: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -6159,47 +6159,47 @@ msgstr "Viesti"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "muutama sekunti sitten" msgstr "muutama sekunti sitten"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "noin minuutti sitten" msgstr "noin minuutti sitten"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "noin %d minuuttia sitten" msgstr "noin %d minuuttia sitten"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "noin tunti sitten" msgstr "noin tunti sitten"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "noin %d tuntia sitten" msgstr "noin %d tuntia sitten"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "noin päivä sitten" msgstr "noin päivä sitten"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "noin %d päivää sitten" msgstr "noin %d päivää sitten"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "noin kuukausi sitten" msgstr "noin kuukausi sitten"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "noin %d kuukautta sitten" msgstr "noin %d kuukautta sitten"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "noin vuosi sitten" msgstr "noin vuosi sitten"

View File

@ -14,12 +14,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:09+0000\n" "PO-Revision-Date: 2010-02-11 08:14:44+0000\n"
"Language-Team: French\n" "Language-Team: French\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: fr\n" "X-Language-Code: fr\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -202,7 +202,7 @@ msgstr "Statuts de %1$s et ses amis dans %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "Méthode API non trouvée !" msgstr "Méthode API non trouvée !"
@ -838,7 +838,7 @@ msgstr "Ne pas bloquer cet utilisateur"
msgid "Yes" msgid "Yes"
msgstr "Oui" msgstr "Oui"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Bloquer cet utilisateur" msgstr "Bloquer cet utilisateur"
@ -1599,7 +1599,7 @@ msgstr "Cet utilisateur est déjà bloqué pour le groupe."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Lutilisateur nest pas membre du groupe." msgstr "Lutilisateur nest pas membre du groupe."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Bloquer cet utilisateur du groupe" msgstr "Bloquer cet utilisateur du groupe"
@ -1702,19 +1702,19 @@ msgstr "Liste des utilisateurs inscrits à ce groupe."
msgid "Admin" msgid "Admin"
msgstr "Administrer" msgstr "Administrer"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Bloquer" msgstr "Bloquer"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Faire de cet utilisateur un administrateur du groupe" msgstr "Faire de cet utilisateur un administrateur du groupe"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Faire un administrateur" msgstr "Faire un administrateur"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Faire de cet utilisateur un administrateur" msgstr "Faire de cet utilisateur un administrateur"
@ -2134,24 +2134,24 @@ msgstr ""
"pas encore didentifiant ? [Créez-vous](%%action.register%%) un nouveau " "pas encore didentifiant ? [Créez-vous](%%action.register%%) un nouveau "
"compte." "compte."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
"Seul un administrateur peut faire dun autre utilisateur un administrateur." "Seul un administrateur peut faire dun autre utilisateur un administrateur."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s est déjà administrateur du groupe « %2$s »." msgstr "%1$s est déjà administrateur du groupe « %2$s »."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "" msgstr ""
"Impossible dobtenir les enregistrements dappartenance pour %1$s dans le " "Impossible dobtenir les enregistrements dappartenance pour %1$s dans le "
"groupe %2$s." "groupe %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Impossible de rendre %1$s administrateur du groupe %2$s." msgstr "Impossible de rendre %1$s administrateur du groupe %2$s."
@ -2356,8 +2356,8 @@ msgstr "type de contenu "
msgid "Only " msgid "Only "
msgstr "Seulement " msgstr "Seulement "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Format de données non supporté." msgstr "Format de données non supporté."
@ -4546,7 +4546,7 @@ msgstr "Problème lors de lenregistrement de la boîte de réception du group
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Erreur de base de donnée en insérant la réponse :%s" msgstr "Erreur de base de donnée en insérant la réponse :%s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -4590,7 +4590,7 @@ msgstr "Autres "
#: lib/accountsettingsaction.php:128 #: lib/accountsettingsaction.php:128
msgid "Other options" msgid "Other options"
msgstr "Autres options " msgstr "Autres options"
#: lib/action.php:144 #: lib/action.php:144
#, php-format #, php-format
@ -6231,47 +6231,47 @@ msgstr "Message"
msgid "Moderate" msgid "Moderate"
msgstr "Modérer" msgstr "Modérer"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "il y a quelques secondes" msgstr "il y a quelques secondes"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "il y a 1 minute" msgstr "il y a 1 minute"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "il y a %d minutes" msgstr "il y a %d minutes"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "il y a 1 heure" msgstr "il y a 1 heure"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "il y a %d heures" msgstr "il y a %d heures"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "il y a 1 jour" msgstr "il y a 1 jour"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "il y a %d jours" msgstr "il y a %d jours"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "il y a 1 mois" msgstr "il y a 1 mois"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "il y a %d mois" msgstr "il y a %d mois"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "il y a environ 1 an" msgstr "il y a environ 1 an"

View File

@ -8,12 +8,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:12+0000\n" "PO-Revision-Date: 2010-02-11 08:14:47+0000\n"
"Language-Team: Irish\n" "Language-Team: Irish\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ga\n" "X-Language-Code: ga\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -197,7 +197,7 @@ msgstr "Actualizacións dende %1$s e amigos en %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "Método da API non atopado" msgstr "Método da API non atopado"
@ -843,7 +843,7 @@ msgstr "Bloquear usuario"
msgid "Yes" msgid "Yes"
msgstr "Si" msgstr "Si"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
#, fuzzy #, fuzzy
msgid "Block this user" msgid "Block this user"
msgstr "Bloquear usuario" msgstr "Bloquear usuario"
@ -1654,7 +1654,7 @@ msgstr "O usuario bloqueoute."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "%1s non é unha orixe fiable." msgstr "%1s non é unha orixe fiable."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "Bloquear usuario" msgstr "Bloquear usuario"
@ -1760,19 +1760,19 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Bloquear" msgstr "Bloquear"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2176,21 +2176,21 @@ msgstr ""
"(%%action.register%%) unha nova conta, ou accede co teu enderezo [OpenID](%%" "(%%action.register%%) unha nova conta, ou accede co teu enderezo [OpenID](%%"
"action.openidlogin%%). " "action.openidlogin%%). "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "O usuario bloqueoute." msgstr "O usuario bloqueoute."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Non podes seguir a este usuario: o Usuario non se atopa." msgstr "Non podes seguir a este usuario: o Usuario non se atopa."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "O usuario bloqueoute." msgstr "O usuario bloqueoute."
@ -2396,8 +2396,8 @@ msgstr "Conectar"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Non é un formato de datos soportado." msgstr "Non é un formato de datos soportado."
@ -4599,7 +4599,7 @@ msgstr "Aconteceu un erro ó gardar o chío."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Erro ó inserir a contestación na BD: %s" msgstr "Erro ó inserir a contestación na BD: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -6336,47 +6336,47 @@ msgstr "Nova mensaxe"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "fai uns segundos" msgstr "fai uns segundos"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "fai un minuto" msgstr "fai un minuto"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "fai %d minutos" msgstr "fai %d minutos"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "fai unha hora" msgstr "fai unha hora"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "fai %d horas" msgstr "fai %d horas"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "fai un día" msgstr "fai un día"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "fai %d días" msgstr "fai %d días"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "fai un mes" msgstr "fai un mes"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "fai %d meses" msgstr "fai %d meses"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "fai un ano" msgstr "fai un ano"

View File

@ -7,12 +7,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:15+0000\n" "PO-Revision-Date: 2010-02-11 08:14:50+0000\n"
"Language-Team: Hebrew\n" "Language-Team: Hebrew\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: he\n" "X-Language-Code: he\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -194,7 +194,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "קוד האישור לא נמצא." msgstr "קוד האישור לא נמצא."
@ -833,7 +833,7 @@ msgstr "אין משתמש כזה."
msgid "Yes" msgid "Yes"
msgstr "כן" msgstr "כן"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
#, fuzzy #, fuzzy
msgid "Block this user" msgid "Block this user"
msgstr "אין משתמש כזה." msgstr "אין משתמש כזה."
@ -1626,7 +1626,7 @@ msgstr "למשתמש אין פרופיל."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "לא שלחנו אלינו את הפרופיל הזה" msgstr "לא שלחנו אלינו את הפרופיל הזה"
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "אין משתמש כזה." msgstr "אין משתמש כזה."
@ -1731,19 +1731,19 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "" msgstr ""
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2113,21 +2113,21 @@ msgstr ""
"היכנס בעזרת שם המשתמש והסיסמה שלך. עדיין אין לך שם משתמש? [הרשם](%%action." "היכנס בעזרת שם המשתמש והסיסמה שלך. עדיין אין לך שם משתמש? [הרשם](%%action."
"register%%) לחשבון " "register%%) לחשבון "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "למשתמש אין פרופיל." msgstr "למשתמש אין פרופיל."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "נכשלה יצירת OpenID מתוך: %s" msgstr "נכשלה יצירת OpenID מתוך: %s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "למשתמש אין פרופיל." msgstr "למשתמש אין פרופיל."
@ -2327,8 +2327,8 @@ msgstr "התחבר"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4444,7 +4444,7 @@ msgstr "בעיה בשמירת ההודעה."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "שגיאת מסד נתונים בהכנסת התגובה: %s" msgstr "שגיאת מסד נתונים בהכנסת התגובה: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -6060,47 +6060,47 @@ msgstr "הודעה חדשה"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "לפני מספר שניות" msgstr "לפני מספר שניות"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "לפני כדקה" msgstr "לפני כדקה"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "לפני כ-%d דקות" msgstr "לפני כ-%d דקות"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "לפני כשעה" msgstr "לפני כשעה"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "לפני כ-%d שעות" msgstr "לפני כ-%d שעות"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "לפני כיום" msgstr "לפני כיום"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "לפני כ-%d ימים" msgstr "לפני כ-%d ימים"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "לפני כחודש" msgstr "לפני כחודש"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "לפני כ-%d חודשים" msgstr "לפני כ-%d חודשים"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "לפני כשנה" msgstr "לפני כשנה"

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:18+0000\n" "PO-Revision-Date: 2010-02-11 08:14:54+0000\n"
"Language-Team: Dutch\n" "Language-Team: Dutch\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: hsb\n" "X-Language-Code: hsb\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -192,7 +192,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "API-metoda njenamakana." msgstr "API-metoda njenamakana."
@ -805,7 +805,7 @@ msgstr "Tutoho wužiwarja njeblokować"
msgid "Yes" msgid "Yes"
msgstr "Haj" msgstr "Haj"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Tutoho wužiwarja blokować" msgstr "Tutoho wužiwarja blokować"
@ -1553,7 +1553,7 @@ msgstr "Wužiwar je hižo za skupinu zablokowany."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Wužiwar njeje čłon skupiny." msgstr "Wužiwar njeje čłon skupiny."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Wužiwarja za skupinu blokować" msgstr "Wužiwarja za skupinu blokować"
@ -1650,19 +1650,19 @@ msgstr "Lisćina wužiwarjow w tutej skupinje."
msgid "Admin" msgid "Admin"
msgstr "Administrator" msgstr "Administrator"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Blokować" msgstr "Blokować"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Tutoho wužiwarja k administratorej činić" msgstr "Tutoho wužiwarja k administratorej činić"
@ -2012,21 +2012,21 @@ msgid ""
"(%%action.register%%) a new account." "(%%action.register%%) a new account."
msgstr "" msgstr ""
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Jenož administrator móže druheho wužiwarja k administratorej činić." msgstr "Jenož administrator móže druheho wužiwarja k administratorej činić."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s je hižo administrator za skupinu \"%2$s\"." msgstr "%1$s je hižo administrator za skupinu \"%2$s\"."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Přistup na datowu sadźbu čłona %1$S w skupinje %2$s móžno njeje." msgstr "Přistup na datowu sadźbu čłona %1$S w skupinje %2$s móžno njeje."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Njeje móžno %1$S k administratorej w skupinje %2$s činić." msgstr "Njeje móžno %1$S k administratorej w skupinje %2$s činić."
@ -2219,8 +2219,8 @@ msgstr ""
msgid "Only " msgid "Only "
msgstr "Jenož " msgstr "Jenož "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Njeje podpěrany datowy format." msgstr "Njeje podpěrany datowy format."
@ -4241,7 +4241,7 @@ msgstr ""
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -5773,47 +5773,47 @@ msgstr "Powěsć"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "před něšto sekundami" msgstr "před něšto sekundami"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "před něhdźe jednej mjeńšinu" msgstr "před něhdźe jednej mjeńšinu"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "před %d mjeńšinami" msgstr "před %d mjeńšinami"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "před něhdźe jednej hodźinu" msgstr "před něhdźe jednej hodźinu"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "před něhdźe %d hodźinami" msgstr "před něhdźe %d hodźinami"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "před něhdźe jednym dnjom" msgstr "před něhdźe jednym dnjom"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "před něhdźe %d dnjemi" msgstr "před něhdźe %d dnjemi"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "před něhdźe jednym měsacom" msgstr "před něhdźe jednym měsacom"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "před něhdźe %d měsacami" msgstr "před něhdźe %d měsacami"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "před něhdźe jednym lětom" msgstr "před něhdźe jednym lětom"

File diff suppressed because it is too large Load Diff

View File

@ -8,12 +8,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:24+0000\n" "PO-Revision-Date: 2010-02-11 08:15:11+0000\n"
"Language-Team: Icelandic\n" "Language-Team: Icelandic\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: is\n" "X-Language-Code: is\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -196,7 +196,7 @@ msgstr "Færslur frá %1$s og vinum á %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "Aðferð í forritsskilum fannst ekki!" msgstr "Aðferð í forritsskilum fannst ekki!"
@ -829,7 +829,7 @@ msgstr "Opna á þennan notanda"
msgid "Yes" msgid "Yes"
msgstr "Já" msgstr "Já"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Loka á þennan notanda" msgstr "Loka á þennan notanda"
@ -1616,7 +1616,7 @@ msgstr ""
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "" msgstr ""
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "" msgstr ""
@ -1713,19 +1713,19 @@ msgstr "Listi yfir notendur í þessum hóp."
msgid "Admin" msgid "Admin"
msgstr "Stjórnandi" msgstr "Stjórnandi"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Loka" msgstr "Loka"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2128,21 +2128,21 @@ msgstr ""
"notendanafn? [Nýskráðu þig](%%action.register%%) eða prófaðu [OpenID](%%" "notendanafn? [Nýskráðu þig](%%action.register%%) eða prófaðu [OpenID](%%"
"action.openidlogin%%). " "action.openidlogin%%). "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "" msgstr ""
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Gat ekki fjarlægt notandann %s úr hópnum %s" msgstr "Gat ekki fjarlægt notandann %s úr hópnum %s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Gat ekki fjarlægt notandann %s úr hópnum %s" msgstr "Gat ekki fjarlægt notandann %s úr hópnum %s"
@ -2347,8 +2347,8 @@ msgstr ""
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Enginn stuðningur við gagnasnið." msgstr "Enginn stuðningur við gagnasnið."
@ -4492,7 +4492,7 @@ msgstr "Vandamál komu upp við að vista babl."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Gagnagrunnsvilla við innsetningu svars: %s" msgstr "Gagnagrunnsvilla við innsetningu svars: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -6088,47 +6088,47 @@ msgstr "Skilaboð"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "fyrir nokkrum sekúndum" msgstr "fyrir nokkrum sekúndum"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "fyrir um einni mínútu síðan" msgstr "fyrir um einni mínútu síðan"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "fyrir um %d mínútum síðan" msgstr "fyrir um %d mínútum síðan"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "fyrir um einum klukkutíma síðan" msgstr "fyrir um einum klukkutíma síðan"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "fyrir um %d klukkutímum síðan" msgstr "fyrir um %d klukkutímum síðan"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "fyrir um einum degi síðan" msgstr "fyrir um einum degi síðan"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "fyrir um %d dögum síðan" msgstr "fyrir um %d dögum síðan"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "fyrir um einum mánuði síðan" msgstr "fyrir um einum mánuði síðan"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "fyrir um %d mánuðum síðan" msgstr "fyrir um %d mánuðum síðan"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "fyrir um einu ári síðan" msgstr "fyrir um einu ári síðan"

View File

@ -1,6 +1,5 @@
# Translation of StatusNet to Italian # Translation of StatusNet to Italian
# #
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Milocasagrande # Author@translatewiki.net: Milocasagrande
# Author@translatewiki.net: Nemo bis # Author@translatewiki.net: Nemo bis
# -- # --
@ -10,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:27+0000\n" "PO-Revision-Date: 2010-02-11 08:15:14+0000\n"
"Language-Team: Italian\n" "Language-Team: Italian\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: it\n" "X-Language-Code: it\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -200,7 +199,7 @@ msgstr "Messaggi da %1$s e amici su %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "Metodo delle API non trovato." msgstr "Metodo delle API non trovato."
@ -484,12 +483,11 @@ msgstr "Gruppi su %s"
#: actions/apioauthauthorize.php:101 #: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided." msgid "No oauth_token parameter provided."
msgstr "" msgstr "Nessun parametro oauth_token fornito."
#: actions/apioauthauthorize.php:106 #: actions/apioauthauthorize.php:106
#, fuzzy
msgid "Invalid token." msgid "Invalid token."
msgstr "Dimensione non valida." msgstr "Token non valido."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268 #: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
#: actions/deletenotice.php:157 actions/disfavor.php:74 #: actions/deletenotice.php:157 actions/disfavor.php:74
@ -532,9 +530,9 @@ msgstr ""
"accesso." "accesso."
#: actions/apioauthauthorize.php:227 #: actions/apioauthauthorize.php:227
#, fuzzy, php-format #, php-format
msgid "The request token %s has been denied and revoked." msgid "The request token %s has been denied and revoked."
msgstr "Il token di richiesta %s è stato rifiutato." msgstr "Il token di richiesta %s è stato rifiutato o revocato."
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281 #: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
#: actions/designadminpanel.php:103 actions/editapplication.php:139 #: actions/designadminpanel.php:103 actions/editapplication.php:139
@ -560,6 +558,9 @@ msgid ""
"the ability to <strong>%3$s</strong> your %4$s account data. You should only " "the ability to <strong>%3$s</strong> your %4$s account data. You should only "
"give access to your %4$s account to third parties you trust." "give access to your %4$s account to third parties you trust."
msgstr "" msgstr ""
"L'applicazione <strong>%1$s</strong> di <strong>%2$s</strong> vorrebbe poter "
"<strong>%3$s</strong> ai dati del tuo account %4$s. È consigliato fornire "
"accesso al proprio account %4$s solo ad applicazioni di cui ci si può fidare."
#: actions/apioauthauthorize.php:310 lib/action.php:441 #: actions/apioauthauthorize.php:310 lib/action.php:441
msgid "Account" msgid "Account"
@ -579,12 +580,10 @@ msgid "Password"
msgstr "Password" msgstr "Password"
#: actions/apioauthauthorize.php:328 #: actions/apioauthauthorize.php:328
#, fuzzy
msgid "Deny" msgid "Deny"
msgstr "Nega" msgstr "Nega"
#: actions/apioauthauthorize.php:334 #: actions/apioauthauthorize.php:334
#, fuzzy
msgid "Allow" msgid "Allow"
msgstr "Consenti" msgstr "Consenti"
@ -826,7 +825,7 @@ msgstr "Non bloccare questo utente"
msgid "Yes" msgid "Yes"
msgstr "Sì" msgstr "Sì"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Blocca questo utente" msgstr "Blocca questo utente"
@ -909,7 +908,6 @@ msgid "Couldn't delete email confirmation."
msgstr "Impossibile eliminare l'email di conferma." msgstr "Impossibile eliminare l'email di conferma."
#: actions/confirmaddress.php:144 #: actions/confirmaddress.php:144
#, fuzzy
msgid "Confirm address" msgid "Confirm address"
msgstr "Conferma indirizzo" msgstr "Conferma indirizzo"
@ -928,20 +926,17 @@ msgid "Notices"
msgstr "Messaggi" msgstr "Messaggi"
#: actions/deleteapplication.php:63 #: actions/deleteapplication.php:63
#, fuzzy
msgid "You must be logged in to delete an application." msgid "You must be logged in to delete an application."
msgstr "Devi eseguire l'accesso per modificare un gruppo." msgstr "Devi eseguire l'accesso per eliminare un'applicazione."
#: actions/deleteapplication.php:71 #: actions/deleteapplication.php:71
#, fuzzy
msgid "Application not found." msgid "Application not found."
msgstr "Il messaggio non ha un profilo" msgstr "Applicazione non trovata."
#: actions/deleteapplication.php:78 actions/editapplication.php:77 #: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94 #: actions/showapplication.php:94
#, fuzzy
msgid "You are not the owner of this application." msgid "You are not the owner of this application."
msgstr "Non fai parte di questo gruppo." msgstr "Questa applicazione non è di tua proprietà."
#: actions/deleteapplication.php:102 actions/editapplication.php:127 #: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118 #: actions/newapplication.php:110 actions/showapplication.php:118
@ -950,29 +945,25 @@ msgid "There was a problem with your session token."
msgstr "Si è verificato un problema con il tuo token di sessione." msgstr "Si è verificato un problema con il tuo token di sessione."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147 #: actions/deleteapplication.php:123 actions/deleteapplication.php:147
#, fuzzy
msgid "Delete application" msgid "Delete application"
msgstr "Nessun messaggio." msgstr "Elimina applicazione"
#: actions/deleteapplication.php:149 #: actions/deleteapplication.php:149
#, fuzzy
msgid "" msgid ""
"Are you sure you want to delete this application? This will clear all data " "Are you sure you want to delete this application? This will clear all data "
"about the application from the database, including all existing user " "about the application from the database, including all existing user "
"connections." "connections."
msgstr "" msgstr ""
"Vuoi eliminare questo utente? Questa azione eliminerà tutti i dati " "Vuoi eliminare questa applicazione? Questa azione eliminerà tutti i dati "
"dell'utente dal database, senza una copia di sicurezza." "riguardo all'applicazione dal database, comprese tutte le connessioni utente."
#: actions/deleteapplication.php:156 #: actions/deleteapplication.php:156
#, fuzzy
msgid "Do not delete this application" msgid "Do not delete this application"
msgstr "Non eliminare il messaggio" msgstr "Non eliminare l'applicazione"
#: actions/deleteapplication.php:160 #: actions/deleteapplication.php:160
#, fuzzy
msgid "Delete this application" msgid "Delete this application"
msgstr "Elimina questo messaggio" msgstr "Elimina l'applicazione"
#: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62 #: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62
#: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69 #: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69
@ -1153,86 +1144,74 @@ msgid "Add to favorites"
msgstr "Aggiungi ai preferiti" msgstr "Aggiungi ai preferiti"
#: actions/doc.php:158 #: actions/doc.php:158
#, fuzzy, php-format #, php-format
msgid "No such document \"%s\"" msgid "No such document \"%s\""
msgstr "Nessun documento." msgstr "Nessun documento \"%s\""
#: actions/editapplication.php:54 #: actions/editapplication.php:54
#, fuzzy
msgid "Edit Application" msgid "Edit Application"
msgstr "Altre opzioni" msgstr "Modifica applicazione"
#: actions/editapplication.php:66 #: actions/editapplication.php:66
#, fuzzy
msgid "You must be logged in to edit an application." msgid "You must be logged in to edit an application."
msgstr "Devi eseguire l'accesso per modificare un gruppo." msgstr "Devi eseguire l'accesso per modificare un'applicazione."
#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166 #: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
#: actions/showapplication.php:87 #: actions/showapplication.php:87
#, fuzzy
msgid "No such application." msgid "No such application."
msgstr "Nessun messaggio." msgstr "Nessuna applicazione."
#: actions/editapplication.php:161 #: actions/editapplication.php:161
#, fuzzy
msgid "Use this form to edit your application." msgid "Use this form to edit your application."
msgstr "Usa questo modulo per modificare il gruppo." msgstr "Usa questo modulo per modificare la tua applicazione."
#: actions/editapplication.php:177 actions/newapplication.php:159 #: actions/editapplication.php:177 actions/newapplication.php:159
#, fuzzy
msgid "Name is required." msgid "Name is required."
msgstr "Stessa password di sopra; richiesta" msgstr "Il nome è richiesto."
#: actions/editapplication.php:180 actions/newapplication.php:165 #: actions/editapplication.php:180 actions/newapplication.php:165
#, fuzzy
msgid "Name is too long (max 255 chars)." msgid "Name is too long (max 255 chars)."
msgstr "Nome troppo lungo (max 255 caratteri)." msgstr "Il nome è troppo lungo (max 255 caratteri)."
#: actions/editapplication.php:183 actions/newapplication.php:162 #: actions/editapplication.php:183 actions/newapplication.php:162
#, fuzzy
msgid "Name already in use. Try another one." msgid "Name already in use. Try another one."
msgstr "Soprannome già in uso. Prova con un altro." msgstr "Nome già in uso. Prova con un altro."
#: actions/editapplication.php:186 actions/newapplication.php:168 #: actions/editapplication.php:186 actions/newapplication.php:168
#, fuzzy
msgid "Description is required." msgid "Description is required."
msgstr "Descrizione" msgstr "La descrizione è richiesta."
#: actions/editapplication.php:194 #: actions/editapplication.php:194
msgid "Source URL is too long." msgid "Source URL is too long."
msgstr "" msgstr "L'URL sorgente è troppo lungo."
#: actions/editapplication.php:200 actions/newapplication.php:185 #: actions/editapplication.php:200 actions/newapplication.php:185
#, fuzzy
msgid "Source URL is not valid." msgid "Source URL is not valid."
msgstr "L'URL \"%s\" dell'immagine non è valido." msgstr "L'URL sorgente non è valido."
#: actions/editapplication.php:203 actions/newapplication.php:188 #: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required." msgid "Organization is required."
msgstr "" msgstr "L'organizzazione è richiesta."
#: actions/editapplication.php:206 actions/newapplication.php:191 #: actions/editapplication.php:206 actions/newapplication.php:191
#, fuzzy
msgid "Organization is too long (max 255 chars)." msgid "Organization is too long (max 255 chars)."
msgstr "Ubicazione troppo lunga (max 255 caratteri)." msgstr "L'organizzazione è troppo lunga (max 255 caratteri)."
#: actions/editapplication.php:209 actions/newapplication.php:194 #: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required." msgid "Organization homepage is required."
msgstr "" msgstr "Il sito web dell'organizzazione è richiesto."
#: actions/editapplication.php:218 actions/newapplication.php:206 #: actions/editapplication.php:218 actions/newapplication.php:206
msgid "Callback is too long." msgid "Callback is too long."
msgstr "" msgstr "Il callback è troppo lungo."
#: actions/editapplication.php:225 actions/newapplication.php:215 #: actions/editapplication.php:225 actions/newapplication.php:215
#, fuzzy
msgid "Callback URL is not valid." msgid "Callback URL is not valid."
msgstr "L'URL \"%s\" dell'immagine non è valido." msgstr "L'URL di callback non è valido."
#: actions/editapplication.php:258 #: actions/editapplication.php:258
#, fuzzy
msgid "Could not update application." msgid "Could not update application."
msgstr "Impossibile aggiornare il gruppo." msgstr "Impossibile aggiornare l'applicazione."
#: actions/editgroup.php:56 #: actions/editgroup.php:56
#, php-format #, php-format
@ -1609,7 +1588,7 @@ msgstr "L'utente è già bloccato dal gruppo."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "L'utente non fa parte del gruppo." msgstr "L'utente non fa parte del gruppo."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Blocca l'utente dal gruppo" msgstr "Blocca l'utente dal gruppo"
@ -1711,19 +1690,19 @@ msgstr "Un elenco degli utenti in questo gruppo."
msgid "Admin" msgid "Admin"
msgstr "Amministra" msgstr "Amministra"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Blocca" msgstr "Blocca"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Rende l'utente amministratore del gruppo" msgstr "Rende l'utente amministratore del gruppo"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Rendi amm." msgstr "Rendi amm."
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Rende questo utente un amministratore" msgstr "Rende questo utente un amministratore"
@ -1905,9 +1884,9 @@ msgid "That is not your Jabber ID."
msgstr "Quello non è il tuo ID di Jabber." msgstr "Quello non è il tuo ID di Jabber."
#: actions/inbox.php:59 #: actions/inbox.php:59
#, fuzzy, php-format #, php-format
msgid "Inbox for %1$s - page %2$d" msgid "Inbox for %1$s - page %2$d"
msgstr "Casella posta in arrivo di %s" msgstr "Casella posta in arrivo di %s - pagina %2$d"
#: actions/inbox.php:62 #: actions/inbox.php:62
#, php-format #, php-format
@ -2129,22 +2108,22 @@ msgstr ""
"Accedi col tuo nome utente e password. Non hai ancora un nome utente? [Crea]" "Accedi col tuo nome utente e password. Non hai ancora un nome utente? [Crea]"
"(%%action.register%%) un nuovo account." "(%%action.register%%) un nuovo account."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
"Solo gli amministratori possono rendere un altro utente amministratori." "Solo gli amministratori possono rendere un altro utente amministratori."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s è già amministratore del gruppo \"%2$s\"." msgstr "%1$s è già amministratore del gruppo \"%2$s\"."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Impossibile recuperare la membership per %1$s nel gruppo %2$s" msgstr "Impossibile recuperare la membership per %1$s nel gruppo %2$s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Impossibile rendere %1$s un amministratore del gruppo %2$s" msgstr "Impossibile rendere %1$s un amministratore del gruppo %2$s"
@ -2154,28 +2133,24 @@ msgid "No current status"
msgstr "Nessun messaggio corrente" msgstr "Nessun messaggio corrente"
#: actions/newapplication.php:52 #: actions/newapplication.php:52
#, fuzzy
msgid "New Application" msgid "New Application"
msgstr "Nessun messaggio." msgstr "Nuova applicazione"
#: actions/newapplication.php:64 #: actions/newapplication.php:64
#, fuzzy
msgid "You must be logged in to register an application." msgid "You must be logged in to register an application."
msgstr "Devi eseguire l'accesso per creare un gruppo." msgstr "Devi eseguire l'accesso per registrare un'applicazione."
#: actions/newapplication.php:143 #: actions/newapplication.php:143
#, fuzzy
msgid "Use this form to register a new application." msgid "Use this form to register a new application."
msgstr "Usa questo modulo per creare un nuovo gruppo." msgstr "Usa questo modulo per registrare un'applicazione."
#: actions/newapplication.php:176 #: actions/newapplication.php:176
msgid "Source URL is required." msgid "Source URL is required."
msgstr "" msgstr "L'URL sorgente è richiesto."
#: actions/newapplication.php:258 actions/newapplication.php:267 #: actions/newapplication.php:258 actions/newapplication.php:267
#, fuzzy
msgid "Could not create application." msgid "Could not create application."
msgstr "Impossibile creare gli alias." msgstr "Impossibile creare l'applicazione."
#: actions/newgroup.php:53 #: actions/newgroup.php:53
msgid "New group" msgid "New group"
@ -2242,7 +2217,7 @@ msgid "Text search"
msgstr "Cerca testo" msgstr "Cerca testo"
#: actions/noticesearch.php:91 #: actions/noticesearch.php:91
#, fuzzy, php-format #, php-format
msgid "Search results for \"%1$s\" on %2$s" msgid "Search results for \"%1$s\" on %2$s"
msgstr "Risultati della ricerca per \"%1$s\" su %2$s" msgstr "Risultati della ricerca per \"%1$s\" su %2$s"
@ -2290,49 +2265,48 @@ msgid "Nudge sent!"
msgstr "Richiamo inviato!" msgstr "Richiamo inviato!"
#: actions/oauthappssettings.php:59 #: actions/oauthappssettings.php:59
#, fuzzy
msgid "You must be logged in to list your applications." msgid "You must be logged in to list your applications."
msgstr "Devi eseguire l'accesso per modificare un gruppo." msgstr "Devi eseguire l'accesso per poter elencare le tue applicazioni."
#: actions/oauthappssettings.php:74 #: actions/oauthappssettings.php:74
#, fuzzy
msgid "OAuth applications" msgid "OAuth applications"
msgstr "Altre opzioni" msgstr "Applicazioni OAuth"
#: actions/oauthappssettings.php:85 #: actions/oauthappssettings.php:85
msgid "Applications you have registered" msgid "Applications you have registered"
msgstr "" msgstr "Applicazioni che hai registrato"
#: actions/oauthappssettings.php:135 #: actions/oauthappssettings.php:135
#, php-format #, php-format
msgid "You have not registered any applications yet." msgid "You have not registered any applications yet."
msgstr "" msgstr "Non hai ancora registrato alcuna applicazione."
#: actions/oauthconnectionssettings.php:72 #: actions/oauthconnectionssettings.php:72
msgid "Connected applications" msgid "Connected applications"
msgstr "" msgstr "Applicazioni collegate"
#: actions/oauthconnectionssettings.php:83 #: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account." msgid "You have allowed the following applications to access you account."
msgstr "" msgstr "Hai consentito alle seguenti applicazioni di accedere al tuo account."
#: actions/oauthconnectionssettings.php:175 #: actions/oauthconnectionssettings.php:175
#, fuzzy
msgid "You are not a user of that application." msgid "You are not a user of that application."
msgstr "Non fai parte di quel gruppo." msgstr "Non sei un utente di quella applicazione."
#: actions/oauthconnectionssettings.php:186 #: actions/oauthconnectionssettings.php:186
msgid "Unable to revoke access for app: " msgid "Unable to revoke access for app: "
msgstr "" msgstr "Impossibile revocare l'accesso per l'applicazione: "
#: actions/oauthconnectionssettings.php:198 #: actions/oauthconnectionssettings.php:198
#, php-format #, php-format
msgid "You have not authorized any applications to use your account." msgid "You have not authorized any applications to use your account."
msgstr "" msgstr "Non hai autorizzato alcuna applicazione all'uso del tuo account."
#: actions/oauthconnectionssettings.php:211 #: actions/oauthconnectionssettings.php:211
msgid "Developers can edit the registration settings for their applications " msgid "Developers can edit the registration settings for their applications "
msgstr "" msgstr ""
"Gli sviluppatori possono modificare le impostazioni di registrazione per le "
"loro applicazioni "
#: actions/oembed.php:79 actions/shownotice.php:100 #: actions/oembed.php:79 actions/shownotice.php:100
msgid "Notice has no profile" msgid "Notice has no profile"
@ -2351,8 +2325,8 @@ msgstr "tipo di contenuto "
msgid "Only " msgid "Only "
msgstr "Solo " msgstr "Solo "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Non è un formato di dati supportato." msgstr "Non è un formato di dati supportato."
@ -2365,7 +2339,6 @@ msgid "Notice Search"
msgstr "Cerca messaggi" msgstr "Cerca messaggi"
#: actions/othersettings.php:60 #: actions/othersettings.php:60
#, fuzzy
msgid "Other settings" msgid "Other settings"
msgstr "Altre impostazioni" msgstr "Altre impostazioni"
@ -2398,34 +2371,29 @@ msgid "URL shortening service is too long (max 50 chars)."
msgstr "Il servizio di riduzione degli URL è troppo lungo (max 50 caratteri)." msgstr "Il servizio di riduzione degli URL è troppo lungo (max 50 caratteri)."
#: actions/otp.php:69 #: actions/otp.php:69
#, fuzzy
msgid "No user ID specified." msgid "No user ID specified."
msgstr "Nessun ID utente specificato." msgstr "Nessun ID utente specificato."
#: actions/otp.php:83 #: actions/otp.php:83
#, fuzzy
msgid "No login token specified." msgid "No login token specified."
msgstr "Nessun token di accesso specificato." msgstr "Nessun token di accesso specificato."
#: actions/otp.php:90 #: actions/otp.php:90
#, fuzzy
msgid "No login token requested." msgid "No login token requested."
msgstr "Nessun token di accesso richiesto." msgstr "Nessun token di accesso richiesto."
#: actions/otp.php:95 #: actions/otp.php:95
#, fuzzy
msgid "Invalid login token specified." msgid "Invalid login token specified."
msgstr "Token di accesso specificato non valido." msgstr "Token di accesso specificato non valido."
#: actions/otp.php:104 #: actions/otp.php:104
#, fuzzy
msgid "Login token expired." msgid "Login token expired."
msgstr "Token di accesso scaduto." msgstr "Token di accesso scaduto."
#: actions/outbox.php:58 #: actions/outbox.php:58
#, fuzzy, php-format #, php-format
msgid "Outbox for %1$s - page %2$d" msgid "Outbox for %1$s - page %2$d"
msgstr "Casella posta inviata di %s" msgstr "Casella posta inviata di %s - pagina %2$d"
#: actions/outbox.php:61 #: actions/outbox.php:61
#, php-format #, php-format
@ -3266,9 +3234,9 @@ msgid "Replies to %s"
msgstr "Risposte a %s" msgstr "Risposte a %s"
#: actions/replies.php:127 #: actions/replies.php:127
#, fuzzy, php-format #, php-format
msgid "Replies to %1$s, page %2$d" msgid "Replies to %1$s, page %2$d"
msgstr "Risposte a %1$s su %2$s!" msgstr "Risposte a %1$s, pagina %2$d"
#: actions/replies.php:144 #: actions/replies.php:144
#, php-format #, php-format
@ -3310,7 +3278,7 @@ msgid ""
"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)." "attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr "" msgstr ""
"Puoi provare a [richiamare %1$s](../%2$s) o [scrivere qualche cosa alla sua " "Puoi provare a [richiamare %1$s](../%2$s) o [scrivere qualche cosa alla sua "
"attenzione](%%%%action.newnotice%%%%?status_textarea=%3$s)." "attenzione](%%%%action.newnotice%%%%?status_textarea=%s)."
#: actions/repliesrss.php:72 #: actions/repliesrss.php:72
#, php-format #, php-format
@ -3335,9 +3303,8 @@ msgid "Sessions"
msgstr "Sessioni" msgstr "Sessioni"
#: actions/sessionsadminpanel.php:65 #: actions/sessionsadminpanel.php:65
#, fuzzy
msgid "Session settings for this StatusNet site." msgid "Session settings for this StatusNet site."
msgstr "Impostazioni dell'aspetto per questo sito di StatusNet." msgstr "Impostazioni di sessione per questo sito di StatusNet."
#: actions/sessionsadminpanel.php:175 #: actions/sessionsadminpanel.php:175
msgid "Handle sessions" msgid "Handle sessions"
@ -3361,18 +3328,16 @@ msgid "Save site settings"
msgstr "Salva impostazioni" msgstr "Salva impostazioni"
#: actions/showapplication.php:82 #: actions/showapplication.php:82
#, fuzzy
msgid "You must be logged in to view an application." msgid "You must be logged in to view an application."
msgstr "Devi eseguire l'accesso per lasciare un gruppo." msgstr "Devi eseguire l'accesso per visualizzare un'applicazione."
#: actions/showapplication.php:157 #: actions/showapplication.php:157
#, fuzzy
msgid "Application profile" msgid "Application profile"
msgstr "Il messaggio non ha un profilo" msgstr "Profilo applicazione"
#: actions/showapplication.php:159 lib/applicationeditform.php:180 #: actions/showapplication.php:159 lib/applicationeditform.php:180
msgid "Icon" msgid "Icon"
msgstr "" msgstr "Icona"
#: actions/showapplication.php:169 actions/version.php:195 #: actions/showapplication.php:169 actions/version.php:195
#: lib/applicationeditform.php:195 #: lib/applicationeditform.php:195
@ -3380,9 +3345,8 @@ msgid "Name"
msgstr "Nome" msgstr "Nome"
#: actions/showapplication.php:178 lib/applicationeditform.php:222 #: actions/showapplication.php:178 lib/applicationeditform.php:222
#, fuzzy
msgid "Organization" msgid "Organization"
msgstr "Paginazione" msgstr "Organizzazione"
#: actions/showapplication.php:187 actions/version.php:198 #: actions/showapplication.php:187 actions/version.php:198
#: lib/applicationeditform.php:209 lib/groupeditform.php:172 #: lib/applicationeditform.php:209 lib/groupeditform.php:172
@ -3397,56 +3361,56 @@ msgstr "Statistiche"
#: actions/showapplication.php:203 #: actions/showapplication.php:203
#, php-format #, php-format
msgid "Created by %1$s - %2$s access by default - %3$d users" msgid "Created by %1$s - %2$s access by default - %3$d users"
msgstr "" msgstr "creata da %1$s - %2$s accessi predefiniti - %3$d utenti"
#: actions/showapplication.php:213 #: actions/showapplication.php:213
msgid "Application actions" msgid "Application actions"
msgstr "" msgstr "Azioni applicazione"
#: actions/showapplication.php:236 #: actions/showapplication.php:236
msgid "Reset key & secret" msgid "Reset key & secret"
msgstr "" msgstr "Reimposta chiave e segreto"
#: actions/showapplication.php:261 #: actions/showapplication.php:261
msgid "Application info" msgid "Application info"
msgstr "" msgstr "Informazioni applicazione"
#: actions/showapplication.php:263 #: actions/showapplication.php:263
msgid "Consumer key" msgid "Consumer key"
msgstr "" msgstr "Chiave consumatore"
#: actions/showapplication.php:268 #: actions/showapplication.php:268
msgid "Consumer secret" msgid "Consumer secret"
msgstr "" msgstr "Segreto consumatore"
#: actions/showapplication.php:273 #: actions/showapplication.php:273
msgid "Request token URL" msgid "Request token URL"
msgstr "" msgstr "URL token di richiesta"
#: actions/showapplication.php:278 #: actions/showapplication.php:278
msgid "Access token URL" msgid "Access token URL"
msgstr "" msgstr "URL token di accesso"
#: actions/showapplication.php:283 #: actions/showapplication.php:283
#, fuzzy
msgid "Authorize URL" msgid "Authorize URL"
msgstr "Autore" msgstr "URL di autorizzazione"
#: actions/showapplication.php:288 #: actions/showapplication.php:288
msgid "" msgid ""
"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " "Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
"signature method." "signature method."
msgstr "" msgstr ""
"Nota: sono supportate firme HMAC-SHA1, ma non è supportato il metodo di "
"firma di testo in chiaro."
#: actions/showapplication.php:309 #: actions/showapplication.php:309
#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?" msgid "Are you sure you want to reset your consumer key and secret?"
msgstr "Vuoi eliminare questo messaggio?" msgstr "Ripristinare la chiave e il segreto?"
#: actions/showfavorites.php:79 #: actions/showfavorites.php:79
#, fuzzy, php-format #, php-format
msgid "%1$s's favorite notices, page %2$d" msgid "%1$s's favorite notices, page %2$d"
msgstr "Messaggi preferiti di %s" msgstr "Messaggi preferiti di %1$s, pagina %2$d"
#: actions/showfavorites.php:132 #: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices." msgid "Could not retrieve favorite notices."
@ -3505,9 +3469,9 @@ msgid "%s group"
msgstr "Gruppo %s" msgstr "Gruppo %s"
#: actions/showgroup.php:84 #: actions/showgroup.php:84
#, fuzzy, php-format #, php-format
msgid "%1$s group, page %2$d" msgid "%1$s group, page %2$d"
msgstr "Membri del gruppo %1$s, pagina %2$d" msgstr "Gruppi di %1$s, pagina %2$d"
#: actions/showgroup.php:218 #: actions/showgroup.php:218
msgid "Group profile" msgid "Group profile"
@ -3629,9 +3593,9 @@ msgid " tagged %s"
msgstr " etichettati con %s" msgstr " etichettati con %s"
#: actions/showstream.php:79 #: actions/showstream.php:79
#, fuzzy, php-format #, php-format
msgid "%1$s, page %2$d" msgid "%1$s, page %2$d"
msgstr "Profili bloccati di %1$s, pagina %2$d" msgstr "%1$s, pagina %2$d"
#: actions/showstream.php:122 #: actions/showstream.php:122
#, php-format #, php-format
@ -3731,7 +3695,7 @@ msgid "You must have a valid contact email address."
msgstr "Devi avere un'email di contatto valida." msgstr "Devi avere un'email di contatto valida."
#: actions/siteadminpanel.php:158 #: actions/siteadminpanel.php:158
#, fuzzy, php-format #, php-format
msgid "Unknown language \"%s\"." msgid "Unknown language \"%s\"."
msgstr "Lingua \"%s\" sconosciuta." msgstr "Lingua \"%s\" sconosciuta."
@ -4065,9 +4029,9 @@ msgid "SMS"
msgstr "SMS" msgstr "SMS"
#: actions/tag.php:68 #: actions/tag.php:68
#, fuzzy, php-format #, php-format
msgid "Notices tagged with %1$s, page %2$d" msgid "Notices tagged with %1$s, page %2$d"
msgstr "Utenti auto-etichettati con %1$s - pagina %2$d" msgstr "Messaggi etichettati con %1$s, pagina %2$d"
#: actions/tag.php:86 #: actions/tag.php:86
#, php-format #, php-format
@ -4353,9 +4317,9 @@ msgid "Enjoy your hotdog!"
msgstr "Gustati il tuo hotdog!" msgstr "Gustati il tuo hotdog!"
#: actions/usergroups.php:64 #: actions/usergroups.php:64
#, fuzzy, php-format #, php-format
msgid "%1$s groups, page %2$d" msgid "%1$s groups, page %2$d"
msgstr "Membri del gruppo %1$s, pagina %2$d" msgstr "Gruppi di %1$s, pagina %2$d"
#: actions/usergroups.php:130 #: actions/usergroups.php:130
msgid "Search for more groups" msgid "Search for more groups"
@ -4456,19 +4420,16 @@ msgstr ""
"Un file di questa dimensione supererebbe la tua quota mensile di %d byte." "Un file di questa dimensione supererebbe la tua quota mensile di %d byte."
#: classes/Group_member.php:41 #: classes/Group_member.php:41
#, fuzzy
msgid "Group join failed." msgid "Group join failed."
msgstr "Profilo del gruppo" msgstr "Ingresso nel gruppo non riuscito."
#: classes/Group_member.php:53 #: classes/Group_member.php:53
#, fuzzy
msgid "Not part of group." msgid "Not part of group."
msgstr "Impossibile aggiornare il gruppo." msgstr "Non si fa parte del gruppo."
#: classes/Group_member.php:60 #: classes/Group_member.php:60
#, fuzzy
msgid "Group leave failed." msgid "Group leave failed."
msgstr "Profilo del gruppo" msgstr "Uscita dal gruppo non riuscita."
#: classes/Login_token.php:76 #: classes/Login_token.php:76
#, php-format #, php-format
@ -4524,16 +4485,15 @@ msgid "Problem saving notice."
msgstr "Problema nel salvare il messaggio." msgstr "Problema nel salvare il messaggio."
#: classes/Notice.php:788 #: classes/Notice.php:788
#, fuzzy
msgid "Problem saving group inbox." msgid "Problem saving group inbox."
msgstr "Problema nel salvare il messaggio." msgstr "Problema nel salvare la casella della posta del gruppo."
#: classes/Notice.php:848 #: classes/Notice.php:848
#, php-format #, php-format
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Errore del DB nell'inserire la risposta: %s" msgstr "Errore del DB nell'inserire la risposta: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -4580,7 +4540,7 @@ msgid "Other options"
msgstr "Altre opzioni" msgstr "Altre opzioni"
#: lib/action.php:144 #: lib/action.php:144
#, fuzzy, php-format #, php-format
msgid "%1$s - %2$s" msgid "%1$s - %2$s"
msgstr "%1$s - %2$s" msgstr "%1$s - %2$s"
@ -4737,16 +4697,19 @@ msgstr "Licenza del contenuto del sito"
#: lib/action.php:806 #: lib/action.php:806
#, php-format #, php-format
msgid "Content and data of %1$s are private and confidential." msgid "Content and data of %1$s are private and confidential."
msgstr "" msgstr "I contenuti e i dati di %1$s sono privati e confidenziali."
#: lib/action.php:811 #: lib/action.php:811
#, php-format #, php-format
msgid "Content and data copyright by %1$s. All rights reserved." msgid "Content and data copyright by %1$s. All rights reserved."
msgstr "" msgstr ""
"I contenuti e i dati sono copyright di %1$s. Tutti i diritti riservati."
#: lib/action.php:814 #: lib/action.php:814
msgid "Content and data copyright by contributors. All rights reserved." msgid "Content and data copyright by contributors. All rights reserved."
msgstr "" msgstr ""
"I contenuti e i dati sono forniti dai collaboratori. Tutti i diritti "
"riservati."
#: lib/action.php:826 #: lib/action.php:826
msgid "All " msgid "All "
@ -4797,102 +4760,99 @@ msgid "Design configuration"
msgstr "Configurazione aspetto" msgstr "Configurazione aspetto"
#: lib/adminpanelaction.php:322 #: lib/adminpanelaction.php:322
#, fuzzy
msgid "User configuration" msgid "User configuration"
msgstr "Configurazione percorsi" msgstr "Configurazione utente"
#: lib/adminpanelaction.php:327 #: lib/adminpanelaction.php:327
#, fuzzy
msgid "Access configuration" msgid "Access configuration"
msgstr "Configurazione aspetto" msgstr "Configurazione di accesso"
#: lib/adminpanelaction.php:332 #: lib/adminpanelaction.php:332
msgid "Paths configuration" msgid "Paths configuration"
msgstr "Configurazione percorsi" msgstr "Configurazione percorsi"
#: lib/adminpanelaction.php:337 #: lib/adminpanelaction.php:337
#, fuzzy
msgid "Sessions configuration" msgid "Sessions configuration"
msgstr "Configurazione aspetto" msgstr "Configurazione sessioni"
#: lib/apiauth.php:95 #: lib/apiauth.php:95
msgid "API resource requires read-write access, but you only have read access." msgid "API resource requires read-write access, but you only have read access."
msgstr "" msgstr ""
"Le risorse API richiedono accesso lettura-scrittura, ma si dispone del solo "
"accesso in lettura."
#: lib/apiauth.php:273 #: lib/apiauth.php:273
#, php-format #, php-format
msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s" msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
msgstr "" msgstr ""
"Tentativo di autorizzazione API non riuscito, soprannome = %1$s, proxy = %2"
"$s, IP = %3$s"
#: lib/applicationeditform.php:136 #: lib/applicationeditform.php:136
msgid "Edit application" msgid "Edit application"
msgstr "" msgstr "Modifica applicazione"
#: lib/applicationeditform.php:184 #: lib/applicationeditform.php:184
msgid "Icon for this application" msgid "Icon for this application"
msgstr "" msgstr "Icona per questa applicazione"
#: lib/applicationeditform.php:204 #: lib/applicationeditform.php:204
#, fuzzy, php-format #, php-format
msgid "Describe your application in %d characters" msgid "Describe your application in %d characters"
msgstr "Descrivi il gruppo o l'argomento in %d caratteri" msgstr "Descrivi l'applicazione in %d caratteri"
#: lib/applicationeditform.php:207 #: lib/applicationeditform.php:207
#, fuzzy
msgid "Describe your application" msgid "Describe your application"
msgstr "Descrivi il gruppo o l'argomento" msgstr "Descrivi l'applicazione"
#: lib/applicationeditform.php:216 #: lib/applicationeditform.php:216
#, fuzzy
msgid "Source URL" msgid "Source URL"
msgstr "Sorgenti" msgstr "URL sorgente"
#: lib/applicationeditform.php:218 #: lib/applicationeditform.php:218
#, fuzzy
msgid "URL of the homepage of this application" msgid "URL of the homepage of this application"
msgstr "URL della pagina web, blog del gruppo o l'argomento" msgstr "URL della pagina web di questa applicazione"
#: lib/applicationeditform.php:224 #: lib/applicationeditform.php:224
msgid "Organization responsible for this application" msgid "Organization responsible for this application"
msgstr "" msgstr "Organizzazione responsabile per questa applicazione"
#: lib/applicationeditform.php:230 #: lib/applicationeditform.php:230
#, fuzzy
msgid "URL for the homepage of the organization" msgid "URL for the homepage of the organization"
msgstr "URL della pagina web, blog del gruppo o l'argomento" msgstr "URL della pagina web dell'organizzazione"
#: lib/applicationeditform.php:236 #: lib/applicationeditform.php:236
msgid "URL to redirect to after authentication" msgid "URL to redirect to after authentication"
msgstr "" msgstr "URL verso cui redirigere dopo l'autenticazione"
#: lib/applicationeditform.php:258 #: lib/applicationeditform.php:258
msgid "Browser" msgid "Browser"
msgstr "" msgstr "Browser"
#: lib/applicationeditform.php:274 #: lib/applicationeditform.php:274
msgid "Desktop" msgid "Desktop"
msgstr "" msgstr "Desktop"
#: lib/applicationeditform.php:275 #: lib/applicationeditform.php:275
msgid "Type of application, browser or desktop" msgid "Type of application, browser or desktop"
msgstr "" msgstr "Tipo di applicazione, browser o desktop"
#: lib/applicationeditform.php:297 #: lib/applicationeditform.php:297
msgid "Read-only" msgid "Read-only"
msgstr "" msgstr "Sola lettura"
#: lib/applicationeditform.php:315 #: lib/applicationeditform.php:315
msgid "Read-write" msgid "Read-write"
msgstr "" msgstr "Lettura-scrittura"
#: lib/applicationeditform.php:316 #: lib/applicationeditform.php:316
msgid "Default access for this application: read-only, or read-write" msgid "Default access for this application: read-only, or read-write"
msgstr "" msgstr ""
"Accesso predefinito per questa applicazione, sola lettura o lettura-scrittura"
#: lib/applicationlist.php:154 #: lib/applicationlist.php:154
#, fuzzy
msgid "Revoke" msgid "Revoke"
msgstr "Rimuovi" msgstr "Revoca"
#: lib/attachmentlist.php:87 #: lib/attachmentlist.php:87
msgid "Attachments" msgid "Attachments"
@ -5255,13 +5215,12 @@ msgid "Updates by SMS"
msgstr "Messaggi via SMS" msgstr "Messaggi via SMS"
#: lib/connectsettingsaction.php:120 #: lib/connectsettingsaction.php:120
#, fuzzy
msgid "Connections" msgid "Connections"
msgstr "Connetti" msgstr "Connessioni"
#: lib/connectsettingsaction.php:121 #: lib/connectsettingsaction.php:121
msgid "Authorized connected applications" msgid "Authorized connected applications"
msgstr "" msgstr "Applicazioni collegate autorizzate"
#: lib/dberroraction.php:60 #: lib/dberroraction.php:60
msgid "Database error" msgid "Database error"
@ -5454,9 +5413,9 @@ msgid "[%s]"
msgstr "[%s]" msgstr "[%s]"
#: lib/jabber.php:400 #: lib/jabber.php:400
#, fuzzy, php-format #, php-format
msgid "Unknown inbox source %d." msgid "Unknown inbox source %d."
msgstr "Lingua \"%s\" sconosciuta." msgstr "Sorgente casella in arrivo %d sconosciuta."
#: lib/joinform.php:114 #: lib/joinform.php:114
msgid "Join" msgid "Join"
@ -5844,12 +5803,10 @@ msgid "Attach a file"
msgstr "Allega un file" msgstr "Allega un file"
#: lib/noticeform.php:212 #: lib/noticeform.php:212
#, fuzzy
msgid "Share my location" msgid "Share my location"
msgstr "Condividi la mia posizione" msgstr "Condividi la mia posizione"
#: lib/noticeform.php:215 #: lib/noticeform.php:215
#, fuzzy
msgid "Do not share my location" msgid "Do not share my location"
msgstr "Non condividere la mia posizione" msgstr "Non condividere la mia posizione"
@ -5858,6 +5815,8 @@ msgid ""
"Sorry, retrieving your geo location is taking longer than expected, please " "Sorry, retrieving your geo location is taking longer than expected, please "
"try again later" "try again later"
msgstr "" msgstr ""
"Il recupero della tua posizione geografica sta impiegando più tempo del "
"previsto. Riprova più tardi."
#: lib/noticelist.php:428 #: lib/noticelist.php:428
#, php-format #, php-format
@ -6043,7 +6002,7 @@ msgstr "Ripeti questo messaggio"
#: lib/router.php:665 #: lib/router.php:665
msgid "No single user defined for single-user mode." msgid "No single user defined for single-user mode."
msgstr "" msgstr "Nessun utente singolo definito per la modalità single-user."
#: lib/sandboxform.php:67 #: lib/sandboxform.php:67
msgid "Sandbox" msgid "Sandbox"
@ -6210,47 +6169,47 @@ msgstr "Messaggio"
msgid "Moderate" msgid "Moderate"
msgstr "Modera" msgstr "Modera"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "pochi secondi fa" msgstr "pochi secondi fa"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "circa un minuto fa" msgstr "circa un minuto fa"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "circa %d minuti fa" msgstr "circa %d minuti fa"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "circa un'ora fa" msgstr "circa un'ora fa"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "circa %d ore fa" msgstr "circa %d ore fa"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "circa un giorno fa" msgstr "circa un giorno fa"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "circa %d giorni fa" msgstr "circa %d giorni fa"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "circa un mese fa" msgstr "circa un mese fa"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "circa %d mesi fa" msgstr "circa %d mesi fa"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "circa un anno fa" msgstr "circa un anno fa"

View File

@ -11,12 +11,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:30+0000\n" "PO-Revision-Date: 2010-02-11 08:15:17+0000\n"
"Language-Team: Japanese\n" "Language-Team: Japanese\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ja\n" "X-Language-Code: ja\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -196,7 +196,7 @@ msgstr "%2$s に %1$s と友人からの更新があります!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "API メソッドが見つかりません。" msgstr "API メソッドが見つかりません。"
@ -818,7 +818,7 @@ msgstr "このユーザをアンブロックする"
msgid "Yes" msgid "Yes"
msgstr "Yes" msgstr "Yes"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "このユーザをブロックする" msgstr "このユーザをブロックする"
@ -1582,7 +1582,7 @@ msgstr "ユーザはすでにグループからブロックされています。
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "ユーザはグループのメンバーではありません。" msgstr "ユーザはグループのメンバーではありません。"
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "グループからユーザをブロック" msgstr "グループからユーザをブロック"
@ -1683,19 +1683,19 @@ msgstr "このグループのユーザのリスト。"
msgid "Admin" msgid "Admin"
msgstr "管理者" msgstr "管理者"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "ブロック" msgstr "ブロック"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "ユーザをグループの管理者にする" msgstr "ユーザをグループの管理者にする"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "管理者にする" msgstr "管理者にする"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "このユーザを管理者にする" msgstr "このユーザを管理者にする"
@ -2100,21 +2100,21 @@ msgstr ""
"ユーザ名とパスワードで、ログインしてください。 まだユーザ名を持っていません" "ユーザ名とパスワードで、ログインしてください。 まだユーザ名を持っていません"
"か? 新しいアカウントを [登録](%%action.register%%)。" "か? 新しいアカウントを [登録](%%action.register%%)。"
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "管理者だけが別のユーザを管理者にすることができます。" msgstr "管理者だけが別のユーザを管理者にすることができます。"
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s はすでにグループ \"%2$s\" の管理者です。" msgstr "%1$s はすでにグループ \"%2$s\" の管理者です。"
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "%1$s の会員資格記録をグループ %2$s 中から取得できません。" msgstr "%1$s の会員資格記録をグループ %2$s 中から取得できません。"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "%1$s をグループ %2$s の管理者にすることはできません" msgstr "%1$s をグループ %2$s の管理者にすることはできません"
@ -2316,8 +2316,8 @@ msgstr "内容種別 "
msgid "Only " msgid "Only "
msgstr "だけ " msgstr "だけ "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "サポートされていないデータ形式。" msgstr "サポートされていないデータ形式。"
@ -4474,7 +4474,7 @@ msgstr "グループ受信箱を保存する際に問題が発生しました。
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "返信を追加する際にデータベースエラー : %s" msgstr "返信を追加する際にデータベースエラー : %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -6108,47 +6108,47 @@ msgstr "メッセージ"
msgid "Moderate" msgid "Moderate"
msgstr "管理" msgstr "管理"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "数秒前" msgstr "数秒前"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "約 1 分前" msgstr "約 1 分前"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "約 %d 分前" msgstr "約 %d 分前"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "約 1 時間前" msgstr "約 1 時間前"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "約 %d 時間前" msgstr "約 %d 時間前"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "約 1 日前" msgstr "約 1 日前"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "約 %d 日前" msgstr "約 %d 日前"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "約 1 ヵ月前" msgstr "約 1 ヵ月前"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "約 %d ヵ月前" msgstr "約 %d ヵ月前"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "約 1 年前" msgstr "約 1 年前"

View File

@ -7,12 +7,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:33+0000\n" "PO-Revision-Date: 2010-02-11 08:15:20+0000\n"
"Language-Team: Korean\n" "Language-Team: Korean\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ko\n" "X-Language-Code: ko\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -195,7 +195,7 @@ msgstr "%1$s 및 %2$s에 있는 친구들의 업데이트!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "API 메서드를 찾을 수 없습니다." msgstr "API 메서드를 찾을 수 없습니다."
@ -834,7 +834,7 @@ msgstr "이 사용자를 차단해제합니다."
msgid "Yes" msgid "Yes"
msgstr "네, 맞습니다." msgstr "네, 맞습니다."
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "이 사용자 차단하기" msgstr "이 사용자 차단하기"
@ -1635,7 +1635,7 @@ msgstr "회원이 당신을 차단해왔습니다."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "당신은 해당 그룹의 멤버가 아닙니다." msgstr "당신은 해당 그룹의 멤버가 아닙니다."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "사용자를 차단합니다." msgstr "사용자를 차단합니다."
@ -1740,21 +1740,21 @@ msgstr "이 그룹의 회원리스트"
msgid "Admin" msgid "Admin"
msgstr "관리자" msgstr "관리자"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "차단하기" msgstr "차단하기"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
#, fuzzy #, fuzzy
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "관리자만 그룹을 편집할 수 있습니다." msgstr "관리자만 그룹을 편집할 수 있습니다."
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
#, fuzzy #, fuzzy
msgid "Make Admin" msgid "Make Admin"
msgstr "관리자" msgstr "관리자"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2146,21 +2146,21 @@ msgstr ""
"action.register%%) 새 계정을 생성 또는 [OpenID](%%action.openidlogin%%)를 사" "action.register%%) 새 계정을 생성 또는 [OpenID](%%action.openidlogin%%)를 사"
"용해 보세요." "용해 보세요."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "회원이 당신을 차단해왔습니다." msgstr "회원이 당신을 차단해왔습니다."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "그룹 %s에서 %s 사용자를 제거할 수 없습니다." msgstr "그룹 %s에서 %s 사용자를 제거할 수 없습니다."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "관리자만 그룹을 편집할 수 있습니다." msgstr "관리자만 그룹을 편집할 수 있습니다."
@ -2365,8 +2365,8 @@ msgstr "연결"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "지원하는 형식의 데이터가 아닙니다." msgstr "지원하는 형식의 데이터가 아닙니다."
@ -4517,7 +4517,7 @@ msgstr "통지를 저장하는데 문제가 발생했습니다."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "답신을 추가 할 때에 데이타베이스 에러 : %s" msgstr "답신을 추가 할 때에 데이타베이스 에러 : %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -6117,47 +6117,47 @@ msgstr "메시지"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "몇 초 전" msgstr "몇 초 전"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "1분 전" msgstr "1분 전"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "%d분 전" msgstr "%d분 전"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "1시간 전" msgstr "1시간 전"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "%d시간 전" msgstr "%d시간 전"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "하루 전" msgstr "하루 전"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "%d일 전" msgstr "%d일 전"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "1달 전" msgstr "1달 전"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "%d달 전" msgstr "%d달 전"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "1년 전" msgstr "1년 전"

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:36+0000\n" "PO-Revision-Date: 2010-02-11 08:15:23+0000\n"
"Language-Team: Macedonian\n" "Language-Team: Macedonian\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: mk\n" "X-Language-Code: mk\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -199,7 +199,7 @@ msgstr "Подновувања од %1$s и пријатели на %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "API методот не е пронајден." msgstr "API методот не е пронајден."
@ -828,7 +828,7 @@ msgstr "Не го блокирај корисников"
msgid "Yes" msgid "Yes"
msgstr "Да" msgstr "Да"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Блокирај го корисников" msgstr "Блокирај го корисников"
@ -1591,7 +1591,7 @@ msgstr "Корисникот е веќе блокиран од оваа груп
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Корисникот не членува во групата." msgstr "Корисникот не членува во групата."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Блокирај корисник од група" msgstr "Блокирај корисник од група"
@ -1695,19 +1695,19 @@ msgstr "Листа на корисниците на овааг група."
msgid "Admin" msgid "Admin"
msgstr "Администратор" msgstr "Администратор"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Блокирај" msgstr "Блокирај"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Направи го корисникот администратор на групата" msgstr "Направи го корисникот администратор на групата"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Направи го/ја администратор" msgstr "Направи го/ја администратор"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Направи го корисникот администратор" msgstr "Направи го корисникот администратор"
@ -2093,7 +2093,8 @@ msgstr "Запамети ме"
#: actions/login.php:237 actions/register.php:480 #: actions/login.php:237 actions/register.php:480
msgid "Automatically login in the future; not for shared computers!" msgid "Automatically login in the future; not for shared computers!"
msgstr "" msgstr ""
"Следниот пат најавете се автоматски; не за компјутери кои ги делите со други!" "Следниот пат најавете се автоматски; не е за компјутери кои ги делите со "
"други!"
#: actions/login.php:247 #: actions/login.php:247
msgid "Lost or forgotten password?" msgid "Lost or forgotten password?"
@ -2116,21 +2117,21 @@ msgstr ""
"Најавете се со Вашето корисничко име и лозинка. Сè уште немате корисничко " "Најавете се со Вашето корисничко име и лозинка. Сè уште немате корисничко "
"име? [Регистрирајте](%%action.register%%) нова сметка." "име? [Регистрирајте](%%action.register%%) нова сметка."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Само администратор може да направи друг корисник администратор." msgstr "Само администратор може да направи друг корисник администратор."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s веќе е администратор на групата „%2$s“." msgstr "%1$s веќе е администратор на групата „%2$s“."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Не можам да добијам евиденција за членство на %1$s во групата %2$s." msgstr "Не можам да добијам евиденција за членство на %1$s во групата %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Не можам да го направам корисникот %1$s администратор на групата %2$s." msgstr "Не можам да го направам корисникот %1$s администратор на групата %2$s."
@ -2334,8 +2335,8 @@ msgstr "тип на содржини "
msgid "Only " msgid "Only "
msgstr "Само " msgstr "Само "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Ова не е поддржан формат на податотека." msgstr "Ова не е поддржан формат на податотека."
@ -4514,7 +4515,7 @@ msgstr "Проблем при зачувувањето на групното п
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Одговор од внесот во базата: %s" msgstr "Одговор од внесот во базата: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -5251,8 +5252,8 @@ msgstr "Подигни податотека"
msgid "" msgid ""
"You can upload your personal background image. The maximum file size is 2MB." "You can upload your personal background image. The maximum file size is 2MB."
msgstr "" msgstr ""
"Не можете да подигнете личната позадинска слика. Максималната дозволена " "Можете да подигнете лична позадинска слика. Максималната дозволена големина "
"големина изнесува 2МБ." "изнесува 2МБ."
#: lib/designsettings.php:418 #: lib/designsettings.php:418
msgid "Design defaults restored." msgid "Design defaults restored."
@ -6193,47 +6194,47 @@ msgstr "Порака"
msgid "Moderate" msgid "Moderate"
msgstr "Модерирај" msgstr "Модерирај"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "пред неколку секунди" msgstr "пред неколку секунди"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "пред една минута" msgstr "пред една минута"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "пред %d минути" msgstr "пред %d минути"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "пред еден час" msgstr "пред еден час"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "пред %d часа" msgstr "пред %d часа"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "пред еден ден" msgstr "пред еден ден"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "пред %d денови" msgstr "пред %d денови"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "пред еден месец" msgstr "пред еден месец"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "пред %d месеца" msgstr "пред %d месеца"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "пред една година" msgstr "пред една година"

View File

@ -8,12 +8,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:39+0000\n" "PO-Revision-Date: 2010-02-11 08:15:26+0000\n"
"Language-Team: Norwegian (bokmål)\n" "Language-Team: Norwegian (bokmål)\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: no\n" "X-Language-Code: no\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -194,7 +194,7 @@ msgstr "Oppdateringer fra %1$s og venner på %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "API-metode ikke funnet!" msgstr "API-metode ikke funnet!"
@ -812,7 +812,7 @@ msgstr "Ikke blokker denne brukeren"
msgid "Yes" msgid "Yes"
msgstr "Ja" msgstr "Ja"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Blokker denne brukeren" msgstr "Blokker denne brukeren"
@ -1576,7 +1576,7 @@ msgstr "Du er allerede logget inn!"
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "" msgstr ""
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "" msgstr ""
@ -1673,19 +1673,19 @@ msgstr "En liste over brukerne i denne gruppen."
msgid "Admin" msgid "Admin"
msgstr "Administrator" msgstr "Administrator"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Blokkér" msgstr "Blokkér"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Gjør brukeren til en administrator for gruppen" msgstr "Gjør brukeren til en administrator for gruppen"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Gjør til administrator" msgstr "Gjør til administrator"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Gjør denne brukeren til administrator" msgstr "Gjør denne brukeren til administrator"
@ -2062,21 +2062,21 @@ msgid ""
"(%%action.register%%) a new account." "(%%action.register%%) a new account."
msgstr "" msgstr ""
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "Du er allerede logget inn!" msgstr "Du er allerede logget inn!"
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Klarte ikke å oppdatere bruker." msgstr "Klarte ikke å oppdatere bruker."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Gjør brukeren til en administrator for gruppen" msgstr "Gjør brukeren til en administrator for gruppen"
@ -2271,8 +2271,8 @@ msgstr "innholdstype "
msgid "Only " msgid "Only "
msgstr "Bare " msgstr "Bare "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4365,7 +4365,7 @@ msgstr ""
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -5952,47 +5952,47 @@ msgstr ""
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "noen få sekunder siden" msgstr "noen få sekunder siden"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "omtrent ett minutt siden" msgstr "omtrent ett minutt siden"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "omtrent %d minutter siden" msgstr "omtrent %d minutter siden"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "omtrent én time siden" msgstr "omtrent én time siden"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "omtrent %d timer siden" msgstr "omtrent %d timer siden"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "omtrent én dag siden" msgstr "omtrent én dag siden"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "omtrent %d dager siden" msgstr "omtrent %d dager siden"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "omtrent én måned siden" msgstr "omtrent én måned siden"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "omtrent %d måneder siden" msgstr "omtrent %d måneder siden"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "omtrent ett år siden" msgstr "omtrent ett år siden"

View File

@ -10,12 +10,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:45+0000\n" "PO-Revision-Date: 2010-02-11 08:15:32+0000\n"
"Language-Team: Dutch\n" "Language-Team: Dutch\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: nl\n" "X-Language-Code: nl\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -198,7 +198,7 @@ msgstr "Updates van %1$s en vrienden op %2$s."
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "De API-functie is niet aangetroffen." msgstr "De API-functie is niet aangetroffen."
@ -837,7 +837,7 @@ msgstr "Gebruiker niet blokkeren"
msgid "Yes" msgid "Yes"
msgstr "Ja" msgstr "Ja"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Deze gebruiker blokkeren" msgstr "Deze gebruiker blokkeren"
@ -1605,7 +1605,7 @@ msgstr "Deze gebruiker is al de toegang tot de groep ontzegd."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "De gebruiker is geen lid van de groep." msgstr "De gebruiker is geen lid van de groep."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Gebruiker toegang tot de groep blokkeren" msgstr "Gebruiker toegang tot de groep blokkeren"
@ -1709,19 +1709,19 @@ msgstr "Ledenlijst van deze groep"
msgid "Admin" msgid "Admin"
msgstr "Beheerder" msgstr "Beheerder"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Blokkeren" msgstr "Blokkeren"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Deze gebruiker groepsbeheerder maken" msgstr "Deze gebruiker groepsbeheerder maken"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Beheerder maken" msgstr "Beheerder maken"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Deze gebruiker beheerder maken" msgstr "Deze gebruiker beheerder maken"
@ -2133,21 +2133,21 @@ msgstr ""
"Meld u aan met uw gebruikersnaam en wachtwoord. Hebt u nog geen " "Meld u aan met uw gebruikersnaam en wachtwoord. Hebt u nog geen "
"gebruikersnaam? [Registreer een nieuwe gebruiker](%%action.register%%)." "gebruikersnaam? [Registreer een nieuwe gebruiker](%%action.register%%)."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Alleen beheerders kunnen andere gebruikers beheerder maken." msgstr "Alleen beheerders kunnen andere gebruikers beheerder maken."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s is al beheerder van de groep \"%2$s\"" msgstr "%1$s is al beheerder van de groep \"%2$s\""
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Het was niet mogelijk te bevestigen dat %1$s lid is van de groep %2$s." msgstr "Het was niet mogelijk te bevestigen dat %1$s lid is van de groep %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Het is niet mogelijk %1$s beheerder te maken van de groep %2$s." msgstr "Het is niet mogelijk %1$s beheerder te maken van de groep %2$s."
@ -2354,8 +2354,8 @@ msgstr "inhoudstype "
msgid "Only " msgid "Only "
msgstr "Alleen " msgstr "Alleen "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Geen ondersteund gegevensformaat." msgstr "Geen ondersteund gegevensformaat."
@ -4423,9 +4423,9 @@ msgid ""
"for more details. " "for more details. "
msgstr "" msgstr ""
"Dit programma wordt verspreid in de hoop dat het bruikbaar is, maar ZONDER " "Dit programma wordt verspreid in de hoop dat het bruikbaar is, maar ZONDER "
"ENIGE GARANTIE; zonder zelfde impliciete garantie van VERMARKTBAARHEID of " "ENIGE GARANTIE; zelfs zonder de impliciete garantie van VERKOOPBAARHEID of "
"GESCHIKTHEID VOOR EEN SPECIFIEK DOEL. Zie de GNU Affero General Public " "GESCHIKTHEID VOOR EEN BEPAALD DOEL. Zie de GNU Affero General Public License "
"License voor meer details. " "voor meer details. "
#: actions/version.php:180 #: actions/version.php:180
#, php-format #, php-format
@ -4551,7 +4551,7 @@ msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
"Er is een databasefout opgetreden bij het invoegen van het antwoord: %s" "Er is een databasefout opgetreden bij het invoegen van het antwoord: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -6237,47 +6237,47 @@ msgstr "Bericht"
msgid "Moderate" msgid "Moderate"
msgstr "Modereren" msgstr "Modereren"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "een paar seconden geleden" msgstr "een paar seconden geleden"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "ongeveer een minuut geleden" msgstr "ongeveer een minuut geleden"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "ongeveer %d minuten geleden" msgstr "ongeveer %d minuten geleden"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "ongeveer een uur geleden" msgstr "ongeveer een uur geleden"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "ongeveer %d uur geleden" msgstr "ongeveer %d uur geleden"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "ongeveer een dag geleden" msgstr "ongeveer een dag geleden"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "ongeveer %d dagen geleden" msgstr "ongeveer %d dagen geleden"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "ongeveer een maand geleden" msgstr "ongeveer een maand geleden"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "ongeveer %d maanden geleden" msgstr "ongeveer %d maanden geleden"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "ongeveer een jaar geleden" msgstr "ongeveer een jaar geleden"

View File

@ -7,12 +7,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:42+0000\n" "PO-Revision-Date: 2010-02-11 08:15:29+0000\n"
"Language-Team: Norwegian Nynorsk\n" "Language-Team: Norwegian Nynorsk\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: nn\n" "X-Language-Code: nn\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -195,7 +195,7 @@ msgstr "Oppdateringar frå %1$s og vener på %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "Fann ikkje API-metode." msgstr "Fann ikkje API-metode."
@ -832,7 +832,7 @@ msgstr "Lås opp brukaren"
msgid "Yes" msgid "Yes"
msgstr "Jau" msgstr "Jau"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Blokkér denne brukaren" msgstr "Blokkér denne brukaren"
@ -1635,7 +1635,7 @@ msgstr "Brukar har blokkert deg."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Du er ikkje medlem av den gruppa." msgstr "Du er ikkje medlem av den gruppa."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "Blokker brukaren" msgstr "Blokker brukaren"
@ -1740,21 +1740,21 @@ msgstr "Ei liste over brukarane i denne gruppa."
msgid "Admin" msgid "Admin"
msgstr "Administrator" msgstr "Administrator"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Blokkér" msgstr "Blokkér"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
#, fuzzy #, fuzzy
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Du må være administrator for å redigere gruppa" msgstr "Du må være administrator for å redigere gruppa"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
#, fuzzy #, fuzzy
msgid "Make Admin" msgid "Make Admin"
msgstr "Administrator" msgstr "Administrator"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2149,21 +2149,21 @@ msgstr ""
"%action.register%%) ein ny konto, eller prøv [OpenID](%%action.openidlogin%" "%action.register%%) ein ny konto, eller prøv [OpenID](%%action.openidlogin%"
"%)." "%)."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "Brukar har blokkert deg." msgstr "Brukar har blokkert deg."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Kunne ikkje fjerne %s fra %s gruppa " msgstr "Kunne ikkje fjerne %s fra %s gruppa "
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Du må være administrator for å redigere gruppa" msgstr "Du må være administrator for å redigere gruppa"
@ -2370,8 +2370,8 @@ msgstr "Kopla til"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Ikkje eit støtta dataformat." msgstr "Ikkje eit støtta dataformat."
@ -4534,7 +4534,7 @@ msgstr "Eit problem oppstod ved lagring av notis."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Databasefeil, kan ikkje lagra svar: %s" msgstr "Databasefeil, kan ikkje lagra svar: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -6144,47 +6144,47 @@ msgstr "Melding"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "eit par sekund sidan" msgstr "eit par sekund sidan"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "omtrent eitt minutt sidan" msgstr "omtrent eitt minutt sidan"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "~%d minutt sidan" msgstr "~%d minutt sidan"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "omtrent ein time sidan" msgstr "omtrent ein time sidan"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "~%d timar sidan" msgstr "~%d timar sidan"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "omtrent ein dag sidan" msgstr "omtrent ein dag sidan"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "~%d dagar sidan" msgstr "~%d dagar sidan"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "omtrent ein månad sidan" msgstr "omtrent ein månad sidan"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "~%d månadar sidan" msgstr "~%d månadar sidan"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "omtrent eitt år sidan" msgstr "omtrent eitt år sidan"

View File

@ -10,8 +10,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:48+0000\n" "PO-Revision-Date: 2010-02-11 08:15:35+0000\n"
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n" "Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
"Language-Team: Polish <pl@li.org>\n" "Language-Team: Polish <pl@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -19,7 +19,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n" "|| n%100>=20) ? 1 : 2);\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: pl\n" "X-Language-Code: pl\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -201,7 +201,7 @@ msgstr "Aktualizacje z %1$s i przyjaciół na %2$s."
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "Nie odnaleziono metody API." msgstr "Nie odnaleziono metody API."
@ -823,7 +823,7 @@ msgstr "Nie blokuj tego użytkownika"
msgid "Yes" msgid "Yes"
msgstr "Tak" msgstr "Tak"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Zablokuj tego użytkownika" msgstr "Zablokuj tego użytkownika"
@ -1581,7 +1581,7 @@ msgstr "Użytkownik został już zablokował w grupie."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Użytkownik nie jest członkiem grupy." msgstr "Użytkownik nie jest członkiem grupy."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Zablokuj użytkownika w grupie" msgstr "Zablokuj użytkownika w grupie"
@ -1679,19 +1679,19 @@ msgstr "Lista użytkowników znajdujących się w tej grupie."
msgid "Admin" msgid "Admin"
msgstr "Administrator" msgstr "Administrator"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Zablokuj" msgstr "Zablokuj"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Uczyń użytkownika administratorem grupy" msgstr "Uczyń użytkownika administratorem grupy"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Uczyń administratorem" msgstr "Uczyń administratorem"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Uczyń tego użytkownika administratorem" msgstr "Uczyń tego użytkownika administratorem"
@ -2099,21 +2099,21 @@ msgstr ""
"Zaloguj się za pomocą nazwy użytkownika i hasła. Nie masz ich jeszcze? " "Zaloguj się za pomocą nazwy użytkownika i hasła. Nie masz ich jeszcze? "
"[Zarejestruj](%%action.register%%) nowe konto." "[Zarejestruj](%%action.register%%) nowe konto."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Tylko administrator może uczynić innego użytkownika administratorem." msgstr "Tylko administrator może uczynić innego użytkownika administratorem."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "Użytkownika %1$s jest już administratorem grupy \"%2$s\"." msgstr "Użytkownika %1$s jest już administratorem grupy \"%2$s\"."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Nie można uzyskać wpisu członkostwa użytkownika %1$s w grupie %2$s." msgstr "Nie można uzyskać wpisu członkostwa użytkownika %1$s w grupie %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Nie można uczynić %1$s administratorem grupy %2$s." msgstr "Nie można uczynić %1$s administratorem grupy %2$s."
@ -2314,8 +2314,8 @@ msgstr "typ zawartości "
msgid "Only " msgid "Only "
msgstr "Tylko " msgstr "Tylko "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "To nie jest obsługiwany format danych." msgstr "To nie jest obsługiwany format danych."
@ -4484,7 +4484,7 @@ msgstr "Problem podczas zapisywania skrzynki odbiorczej grupy."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Błąd bazy danych podczas wprowadzania odpowiedzi: %s" msgstr "Błąd bazy danych podczas wprowadzania odpowiedzi: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -6163,47 +6163,47 @@ msgstr "Wiadomość"
msgid "Moderate" msgid "Moderate"
msgstr "Moderuj" msgstr "Moderuj"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "kilka sekund temu" msgstr "kilka sekund temu"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "około minutę temu" msgstr "około minutę temu"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "około %d minut temu" msgstr "około %d minut temu"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "około godzinę temu" msgstr "około godzinę temu"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "około %d godzin temu" msgstr "około %d godzin temu"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "blisko dzień temu" msgstr "blisko dzień temu"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "około %d dni temu" msgstr "około %d dni temu"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "około miesiąc temu" msgstr "około miesiąc temu"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "około %d miesięcy temu" msgstr "około %d miesięcy temu"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "około rok temu" msgstr "około rok temu"

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:51+0000\n" "PO-Revision-Date: 2010-02-11 08:15:39+0000\n"
"Language-Team: Portuguese\n" "Language-Team: Portuguese\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: pt\n" "X-Language-Code: pt\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -198,7 +198,7 @@ msgstr "Actualizações de %1$s e amigos no %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "Método da API não encontrado." msgstr "Método da API não encontrado."
@ -821,7 +821,7 @@ msgstr "Não bloquear este utilizador"
msgid "Yes" msgid "Yes"
msgstr "Sim" msgstr "Sim"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Bloquear este utilizador" msgstr "Bloquear este utilizador"
@ -1604,7 +1604,7 @@ msgstr "Acesso do utilizador ao grupo já foi bloqueado."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Utilizador não é membro do grupo." msgstr "Utilizador não é membro do grupo."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Bloquear acesso do utilizador ao grupo" msgstr "Bloquear acesso do utilizador ao grupo"
@ -1706,19 +1706,19 @@ msgstr "Uma lista dos utilizadores neste grupo."
msgid "Admin" msgid "Admin"
msgstr "Gestor" msgstr "Gestor"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Bloquear" msgstr "Bloquear"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Tornar utilizador o gestor do grupo" msgstr "Tornar utilizador o gestor do grupo"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Tornar Gestor" msgstr "Tornar Gestor"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Tornar este utilizador um gestor" msgstr "Tornar este utilizador um gestor"
@ -2126,21 +2126,21 @@ msgstr ""
"Entrar com o seu nome de utilizador e senha. Ainda não está registado? " "Entrar com o seu nome de utilizador e senha. Ainda não está registado? "
"[Registe](%%action.register%%) uma conta." "[Registe](%%action.register%%) uma conta."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Só um gestor pode tornar outro utilizador num gestor." msgstr "Só um gestor pode tornar outro utilizador num gestor."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s já é um administrador do grupo \"%2$s\"." msgstr "%1$s já é um administrador do grupo \"%2$s\"."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Não existe registo de %1$s ter entrado no grupo %2$s." msgstr "Não existe registo de %1$s ter entrado no grupo %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Não é possível tornar %1$s administrador do grupo %2$s." msgstr "Não é possível tornar %1$s administrador do grupo %2$s."
@ -2347,8 +2347,8 @@ msgstr "tipo de conteúdo "
msgid "Only " msgid "Only "
msgstr "Apenas " msgstr "Apenas "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Formato de dados não suportado." msgstr "Formato de dados não suportado."
@ -4530,7 +4530,7 @@ msgstr "Problema na gravação da nota."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Ocorreu um erro na base de dados ao inserir a resposta: %s" msgstr "Ocorreu um erro na base de dados ao inserir a resposta: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -6203,47 +6203,47 @@ msgstr "Mensagem"
msgid "Moderate" msgid "Moderate"
msgstr "Moderar" msgstr "Moderar"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "há alguns segundos" msgstr "há alguns segundos"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "há cerca de um minuto" msgstr "há cerca de um minuto"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "há cerca de %d minutos" msgstr "há cerca de %d minutos"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "há cerca de uma hora" msgstr "há cerca de uma hora"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "há cerca de %d horas" msgstr "há cerca de %d horas"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "há cerca de um dia" msgstr "há cerca de um dia"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "há cerca de %d dias" msgstr "há cerca de %d dias"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "há cerca de um mês" msgstr "há cerca de um mês"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "há cerca de %d meses" msgstr "há cerca de %d meses"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "há cerca de um ano" msgstr "há cerca de um ano"

View File

@ -2,6 +2,7 @@
# #
# Author@translatewiki.net: Aracnus # Author@translatewiki.net: Aracnus
# Author@translatewiki.net: Ewout # Author@translatewiki.net: Ewout
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Vuln # Author@translatewiki.net: Vuln
# -- # --
# This file is distributed under the same license as the StatusNet package. # This file is distributed under the same license as the StatusNet package.
@ -10,12 +11,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-14 20:05+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:54+0000\n" "PO-Revision-Date: 2010-02-14 20:07:20+0000\n"
"Language-Team: Brazilian Portuguese\n" "Language-Team: Brazilian Portuguese\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62476); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: pt-br\n" "X-Language-Code: pt-br\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -26,14 +27,12 @@ msgid "Access"
msgstr "Acesso" msgstr "Acesso"
#: actions/accessadminpanel.php:65 #: actions/accessadminpanel.php:65
#, fuzzy
msgid "Site access settings" msgid "Site access settings"
msgstr "Salvar as configurações do site" msgstr "Configurações de acesso ao site"
#: actions/accessadminpanel.php:158 #: actions/accessadminpanel.php:158
#, fuzzy
msgid "Registration" msgid "Registration"
msgstr "Registrar-se" msgstr "Registro"
#: actions/accessadminpanel.php:161 #: actions/accessadminpanel.php:161
msgid "Private" msgid "Private"
@ -72,9 +71,8 @@ msgid "Save"
msgstr "Salvar" msgstr "Salvar"
#: actions/accessadminpanel.php:189 #: actions/accessadminpanel.php:189
#, fuzzy
msgid "Save access settings" msgid "Save access settings"
msgstr "Salvar as configurações do site" msgstr "Salvar as configurações de acesso"
#: actions/all.php:63 actions/public.php:97 actions/replies.php:92 #: actions/all.php:63 actions/public.php:97 actions/replies.php:92
#: actions/showfavorites.php:137 actions/tag.php:51 #: actions/showfavorites.php:137 actions/tag.php:51
@ -174,8 +172,8 @@ msgstr ""
msgid "You and friends" msgid "You and friends"
msgstr "Você e amigos" msgstr "Você e amigos"
#: actions/allrss.php:119 actions/apitimelinefriends.php:121 #: actions/allrss.php:119 actions/apitimelinefriends.php:119
#: actions/apitimelinehome.php:122 #: actions/apitimelinehome.php:120
#, php-format #, php-format
msgid "Updates from %1$s and friends on %2$s!" msgid "Updates from %1$s and friends on %2$s!"
msgstr "Atualizações de %1$s e amigos no %2$s!" msgstr "Atualizações de %1$s e amigos no %2$s!"
@ -196,12 +194,12 @@ msgstr "Atualizações de %1$s e amigos no %2$s!"
#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112 #: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137 #: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111 #: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
#: actions/apitimelinefavorites.php:146 actions/apitimelinefriends.php:155 #: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
#: actions/apitimelinegroup.php:150 actions/apitimelinehome.php:156 #: actions/apitimelinegroup.php:182 actions/apitimelinehome.php:184
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:152
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:194 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "O método da API não foi encontrado!" msgstr "O método da API não foi encontrado!"
@ -487,12 +485,11 @@ msgstr "grupos no %s"
#: actions/apioauthauthorize.php:101 #: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided." msgid "No oauth_token parameter provided."
msgstr "" msgstr "Não foi fornecido nenhum parâmetro oauth_token"
#: actions/apioauthauthorize.php:106 #: actions/apioauthauthorize.php:106
#, fuzzy
msgid "Invalid token." msgid "Invalid token."
msgstr "Tamanho inválido." msgstr "Token inválido."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268 #: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
#: actions/deletenotice.php:157 actions/disfavor.php:74 #: actions/deletenotice.php:157 actions/disfavor.php:74
@ -518,16 +515,14 @@ msgid "Invalid nickname / password!"
msgstr "Nome de usuário e/ou senha inválido(s)!" msgstr "Nome de usuário e/ou senha inválido(s)!"
#: actions/apioauthauthorize.php:159 #: actions/apioauthauthorize.php:159
#, fuzzy
msgid "Database error deleting OAuth application user." msgid "Database error deleting OAuth application user."
msgstr "" msgstr ""
"Erro no banco de dados durante a exclusão do aplicativo OAuth do usuário." "Erro no banco de dados durante a exclusão do usuário da aplicação OAuth."
#: actions/apioauthauthorize.php:185 #: actions/apioauthauthorize.php:185
#, fuzzy
msgid "Database error inserting OAuth application user." msgid "Database error inserting OAuth application user."
msgstr "" msgstr ""
"Erro no banco de dados durante a inserção do aplicativo OAuth do usuário." "Erro no banco de dados durante a inserção do usuário da aplicativo OAuth."
#: actions/apioauthauthorize.php:214 #: actions/apioauthauthorize.php:214
#, php-format #, php-format
@ -539,9 +534,9 @@ msgstr ""
"acesso." "acesso."
#: actions/apioauthauthorize.php:227 #: actions/apioauthauthorize.php:227
#, fuzzy, php-format #, php-format
msgid "The request token %s has been denied and revoked." msgid "The request token %s has been denied and revoked."
msgstr "O token de requisição %s foi negado." msgstr "O token %s solicitado foi negado e revogado."
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281 #: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
#: actions/designadminpanel.php:103 actions/editapplication.php:139 #: actions/designadminpanel.php:103 actions/editapplication.php:139
@ -567,6 +562,10 @@ msgid ""
"the ability to <strong>%3$s</strong> your %4$s account data. You should only " "the ability to <strong>%3$s</strong> your %4$s account data. You should only "
"give access to your %4$s account to third parties you trust." "give access to your %4$s account to third parties you trust."
msgstr "" msgstr ""
"A aplicação <strong>%1$s</strong> por <strong>%2$s</strong> solicita a "
"permissão para <strong>%3$s</strong> os dados da sua conta %4$s. Você deve "
"fornecer acesso à sua conta %4$s somente para terceiros nos quais você "
"confia."
#: actions/apioauthauthorize.php:310 lib/action.php:441 #: actions/apioauthauthorize.php:310 lib/action.php:441
msgid "Account" msgid "Account"
@ -650,7 +649,7 @@ msgstr "Formato não suportado."
msgid "%1$s / Favorites from %2$s" msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoritas de %2$s" msgstr "%1$s / Favoritas de %2$s"
#: actions/apitimelinefavorites.php:120 #: actions/apitimelinefavorites.php:117
#, php-format #, php-format
msgid "%1$s updates favorited by %2$s / %2$s." msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s marcadas como favoritas por %2$s / %2$s." msgstr "%1$s marcadas como favoritas por %2$s / %2$s."
@ -661,7 +660,7 @@ msgstr "%1$s marcadas como favoritas por %2$s / %2$s."
msgid "%s timeline" msgid "%s timeline"
msgstr "Mensagens de %s" msgstr "Mensagens de %s"
#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 #: actions/apitimelinegroup.php:114 actions/apitimelineuser.php:126
#: actions/userrss.php:92 #: actions/userrss.php:92
#, php-format #, php-format
msgid "Updates from %1$s on %2$s!" msgid "Updates from %1$s on %2$s!"
@ -677,12 +676,12 @@ msgstr "%1$s / Mensagens mencionando %2$s"
msgid "%1$s updates that reply to updates from %2$s / %3$s." msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s mensagens em resposta 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 #: actions/apitimelinepublic.php:111 actions/publicrss.php:103
#, php-format #, php-format
msgid "%s public timeline" msgid "%s public timeline"
msgstr "Mensagens públicas de %s" msgstr "Mensagens públicas de %s"
#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #: actions/apitimelinepublic.php:115 actions/publicrss.php:105
#, php-format #, php-format
msgid "%s updates from everyone!" msgid "%s updates from everyone!"
msgstr "%s mensagens de todo mundo!" msgstr "%s mensagens de todo mundo!"
@ -692,7 +691,7 @@ msgstr "%s mensagens de todo mundo!"
msgid "Repeated to %s" msgid "Repeated to %s"
msgstr "Repetida para %s" msgstr "Repetida para %s"
#: actions/apitimelineretweetsofme.php:112 #: actions/apitimelineretweetsofme.php:114
#, php-format #, php-format
msgid "Repeats of %s" msgid "Repeats of %s"
msgstr "Repetições de %s" msgstr "Repetições de %s"
@ -702,7 +701,7 @@ msgstr "Repetições de %s"
msgid "Notices tagged with %s" msgid "Notices tagged with %s"
msgstr "Mensagens etiquetadas como %s" msgstr "Mensagens etiquetadas como %s"
#: actions/apitimelinetag.php:108 actions/tagrss.php:64 #: actions/apitimelinetag.php:104 actions/tagrss.php:64
#, php-format #, php-format
msgid "Updates tagged with %1$s on %2$s!" msgid "Updates tagged with %1$s on %2$s!"
msgstr "Mensagens etiquetadas como %1$s no %2$s!" msgstr "Mensagens etiquetadas como %1$s no %2$s!"
@ -831,7 +830,7 @@ msgstr "Não bloquear este usuário"
msgid "Yes" msgid "Yes"
msgstr "Sim" msgstr "Sim"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Bloquear este usuário" msgstr "Bloquear este usuário"
@ -932,14 +931,12 @@ msgid "Notices"
msgstr "Mensagens" msgstr "Mensagens"
#: actions/deleteapplication.php:63 #: actions/deleteapplication.php:63
#, fuzzy
msgid "You must be logged in to delete an application." msgid "You must be logged in to delete an application."
msgstr "Você precisa estar autenticado para editar uma aplicação." msgstr "Você precisa estar autenticado para excluir uma aplicação."
#: actions/deleteapplication.php:71 #: actions/deleteapplication.php:71
#, fuzzy
msgid "Application not found." msgid "Application not found."
msgstr "Informação da aplicação" msgstr "A aplicação não foi encontrada."
#: actions/deleteapplication.php:78 actions/editapplication.php:77 #: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94 #: actions/showapplication.php:94
@ -953,29 +950,26 @@ msgid "There was a problem with your session token."
msgstr "Ocorreu um problema com o seu token de sessão." msgstr "Ocorreu um problema com o seu token de sessão."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147 #: actions/deleteapplication.php:123 actions/deleteapplication.php:147
#, fuzzy
msgid "Delete application" msgid "Delete application"
msgstr "Editar a aplicação" msgstr "Excluir a aplicação"
#: actions/deleteapplication.php:149 #: actions/deleteapplication.php:149
#, fuzzy
msgid "" msgid ""
"Are you sure you want to delete this application? This will clear all data " "Are you sure you want to delete this application? This will clear all data "
"about the application from the database, including all existing user " "about the application from the database, including all existing user "
"connections." "connections."
msgstr "" msgstr ""
"Tem certeza que deseja excluir este usuário? Isso irá eliminar todos os " "Tem certeza que deseja excluir esta aplicação? Isso eliminará todos os dados "
"dados deste usuário do banco de dados, sem cópia de segurança." "desta aplicação do banco de dados, incluindo todas as conexões existentes "
"com os usuários."
#: actions/deleteapplication.php:156 #: actions/deleteapplication.php:156
#, fuzzy
msgid "Do not delete this application" msgid "Do not delete this application"
msgstr "Não excluir esta mensagem." msgstr "Não excluir esta aplicação"
#: actions/deleteapplication.php:160 #: actions/deleteapplication.php:160
#, fuzzy
msgid "Delete this application" msgid "Delete this application"
msgstr "Ícone para esta aplicação" msgstr "Excluir esta aplicação"
#: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62 #: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62
#: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69 #: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69
@ -1032,8 +1026,8 @@ msgid ""
"Are you sure you want to delete this user? This will clear all data about " "Are you sure you want to delete this user? This will clear all data about "
"the user from the database, without a backup." "the user from the database, without a backup."
msgstr "" msgstr ""
"Tem certeza que deseja excluir este usuário? Isso irá eliminar todos os " "Tem certeza que deseja excluir este usuário? Isso eliminará todos os dados "
"dados deste usuário do banco de dados, sem cópia de segurança." "deste usuário do banco de dados, sem cópia de segurança."
#: actions/deleteuser.php:148 lib/deleteuserform.php:77 #: actions/deleteuser.php:148 lib/deleteuserform.php:77
msgid "Delete this user" msgid "Delete this user"
@ -1156,12 +1150,11 @@ msgid "Add to favorites"
msgstr "Adicionar às favoritas" msgstr "Adicionar às favoritas"
#: actions/doc.php:158 #: actions/doc.php:158
#, fuzzy, php-format #, php-format
msgid "No such document \"%s\"" msgid "No such document \"%s\""
msgstr "Esse documento não existe." msgstr "O documento \"%s\" não existe"
#: actions/editapplication.php:54 #: actions/editapplication.php:54
#, fuzzy
msgid "Edit Application" msgid "Edit Application"
msgstr "Editar a aplicação" msgstr "Editar a aplicação"
@ -1187,9 +1180,8 @@ msgid "Name is too long (max 255 chars)."
msgstr "O nome é muito extenso (máx. 255 caracteres)." msgstr "O nome é muito extenso (máx. 255 caracteres)."
#: actions/editapplication.php:183 actions/newapplication.php:162 #: actions/editapplication.php:183 actions/newapplication.php:162
#, fuzzy
msgid "Name already in use. Try another one." msgid "Name already in use. Try another one."
msgstr "Esta identificação já está em uso. Tente outro." msgstr "Este nome já está em uso. Tente outro."
#: actions/editapplication.php:186 actions/newapplication.php:168 #: actions/editapplication.php:186 actions/newapplication.php:168
msgid "Description is required." msgid "Description is required."
@ -1254,7 +1246,7 @@ msgstr "descrição muito extensa (máximo %d caracteres)."
msgid "Could not update group." msgid "Could not update group."
msgstr "Não foi possível atualizar o grupo." msgstr "Não foi possível atualizar o grupo."
#: actions/editgroup.php:259 classes/User_group.php:390 #: actions/editgroup.php:259 classes/User_group.php:423
msgid "Could not create aliases." msgid "Could not create aliases."
msgstr "Não foi possível criar os apelidos." msgstr "Não foi possível criar os apelidos."
@ -1603,7 +1595,7 @@ msgstr "O usuário já está bloqueado no grupo."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "O usuário não é um membro do grupo" msgstr "O usuário não é um membro do grupo"
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Bloquear o usuário no grupo" msgstr "Bloquear o usuário no grupo"
@ -1706,19 +1698,19 @@ msgstr "Uma lista dos usuários deste grupo."
msgid "Admin" msgid "Admin"
msgstr "Admin" msgstr "Admin"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Bloquear" msgstr "Bloquear"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Tornar o usuário um administrador do grupo" msgstr "Tornar o usuário um administrador do grupo"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Tornar administrador" msgstr "Tornar administrador"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Torna este usuário um administrador" msgstr "Torna este usuário um administrador"
@ -1901,9 +1893,9 @@ msgid "That is not your Jabber ID."
msgstr "Essa não é sua ID do Jabber." msgstr "Essa não é sua ID do Jabber."
#: actions/inbox.php:59 #: actions/inbox.php:59
#, fuzzy, php-format #, php-format
msgid "Inbox for %1$s - page %2$d" msgid "Inbox for %1$s - page %2$d"
msgstr "Recebidas por %s" msgstr "Recebidas por %s - pág. %2$d"
#: actions/inbox.php:62 #: actions/inbox.php:62
#, php-format #, php-format
@ -2129,23 +2121,23 @@ msgstr ""
"Digite seu nome de usuário e senha. Ainda não possui um usuário? [Registre](%" "Digite seu nome de usuário e senha. Ainda não possui um usuário? [Registre](%"
"%action.register%%) uma nova conta." "%action.register%%) uma nova conta."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
"Somente um administrador pode dar privilégios de administração para outro " "Somente um administrador pode dar privilégios de administração para outro "
"usuário." "usuário."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s já é um administrador do grupo \"%2$s\"." msgstr "%1$s já é um administrador do grupo \"%2$s\"."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Não foi possível obter o registro de membro de %1$s no grupo %2$s." msgstr "Não foi possível obter o registro de membro de %1$s no grupo %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Não foi possível tornar %1$s um administrador do grupo %2$s." msgstr "Não foi possível tornar %1$s um administrador do grupo %2$s."
@ -2155,7 +2147,6 @@ msgid "No current status"
msgstr "Nenhuma mensagem atual" msgstr "Nenhuma mensagem atual"
#: actions/newapplication.php:52 #: actions/newapplication.php:52
#, fuzzy
msgid "New Application" msgid "New Application"
msgstr "Nova aplicação" msgstr "Nova aplicação"
@ -2351,8 +2342,8 @@ msgstr "tipo de conteúdo "
msgid "Only " msgid "Only "
msgstr "Apenas " msgstr "Apenas "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Não é um formato de dados suportado." msgstr "Não é um formato de dados suportado."
@ -2417,9 +2408,9 @@ msgid "Login token expired."
msgstr "O token de autenticação expirou." msgstr "O token de autenticação expirou."
#: actions/outbox.php:58 #: actions/outbox.php:58
#, fuzzy, php-format #, php-format
msgid "Outbox for %1$s - page %2$d" msgid "Outbox for %1$s - page %2$d"
msgstr "Enviadas de %s" msgstr "Enviadas por %s - pág. %2$d"
#: actions/outbox.php:61 #: actions/outbox.php:61
#, php-format #, php-format
@ -4433,7 +4424,7 @@ msgstr "Versão"
#: actions/version.php:197 #: actions/version.php:197
msgid "Author(s)" msgid "Author(s)"
msgstr "Author(es)" msgstr "Autor(es)"
#: classes/File.php:144 #: classes/File.php:144
#, php-format #, php-format
@ -4529,7 +4520,7 @@ msgstr "Problema no salvamento da mensagem."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Erro no banco de dados na inserção da reposta: %s" msgstr "Erro no banco de dados na inserção da reposta: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1271
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -4539,11 +4530,11 @@ msgstr "RT @%1$s %2$s"
msgid "Welcome to %1$s, @%2$s!" msgid "Welcome to %1$s, @%2$s!"
msgstr "Bem vindo(a) a %1$s, @%2$s!" msgstr "Bem vindo(a) a %1$s, @%2$s!"
#: classes/User_group.php:380 #: classes/User_group.php:413
msgid "Could not create group." msgid "Could not create group."
msgstr "Não foi possível criar o grupo." msgstr "Não foi possível criar o grupo."
#: classes/User_group.php:409 #: classes/User_group.php:442
msgid "Could not set group membership." msgid "Could not set group membership."
msgstr "Não foi possível configurar a associação ao grupo." msgstr "Não foi possível configurar a associação ao grupo."
@ -6205,47 +6196,47 @@ msgstr "Mensagem"
msgid "Moderate" msgid "Moderate"
msgstr "Moderar" msgstr "Moderar"
#: lib/util.php:867 #: lib/util.php:871
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "alguns segundos atrás" msgstr "alguns segundos atrás"
#: lib/util.php:869 #: lib/util.php:873
msgid "about a minute ago" msgid "about a minute ago"
msgstr "cerca de 1 minuto atrás" msgstr "cerca de 1 minuto atrás"
#: lib/util.php:871 #: lib/util.php:875
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "cerca de %d minutos atrás" msgstr "cerca de %d minutos atrás"
#: lib/util.php:873 #: lib/util.php:877
msgid "about an hour ago" msgid "about an hour ago"
msgstr "cerca de 1 hora atrás" msgstr "cerca de 1 hora atrás"
#: lib/util.php:875 #: lib/util.php:879
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "cerca de %d horas atrás" msgstr "cerca de %d horas atrás"
#: lib/util.php:877 #: lib/util.php:881
msgid "about a day ago" msgid "about a day ago"
msgstr "cerca de 1 dia atrás" msgstr "cerca de 1 dia atrás"
#: lib/util.php:879 #: lib/util.php:883
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "cerca de %d dias atrás" msgstr "cerca de %d dias atrás"
#: lib/util.php:881 #: lib/util.php:885
msgid "about a month ago" msgid "about a month ago"
msgstr "cerca de 1 mês atrás" msgstr "cerca de 1 mês atrás"
#: lib/util.php:883 #: lib/util.php:887
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "cerca de %d meses atrás" msgstr "cerca de %d meses atrás"
#: lib/util.php:885 #: lib/util.php:889
msgid "about a year ago" msgid "about a year ago"
msgstr "cerca de 1 ano atrás" msgstr "cerca de 1 ano atrás"

View File

@ -12,12 +12,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-14 20:05+0000\n"
"PO-Revision-Date: 2010-02-05 23:54:57+0000\n" "PO-Revision-Date: 2010-02-14 20:07:23+0000\n"
"Language-Team: Russian\n" "Language-Team: Russian\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62476); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ru\n" "X-Language-Code: ru\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -173,8 +173,8 @@ msgstr ""
msgid "You and friends" msgid "You and friends"
msgstr "Вы и друзья" msgstr "Вы и друзья"
#: actions/allrss.php:119 actions/apitimelinefriends.php:121 #: actions/allrss.php:119 actions/apitimelinefriends.php:119
#: actions/apitimelinehome.php:122 #: actions/apitimelinehome.php:120
#, php-format #, php-format
msgid "Updates from %1$s and friends on %2$s!" msgid "Updates from %1$s and friends on %2$s!"
msgstr "Обновлено от %1$s и его друзей на %2$s!" msgstr "Обновлено от %1$s и его друзей на %2$s!"
@ -195,12 +195,12 @@ msgstr "Обновлено от %1$s и его друзей на %2$s!"
#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112 #: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137 #: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111 #: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
#: actions/apitimelinefavorites.php:146 actions/apitimelinefriends.php:155 #: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
#: actions/apitimelinegroup.php:150 actions/apitimelinehome.php:156 #: actions/apitimelinegroup.php:182 actions/apitimelinehome.php:184
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:152
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:194 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "Метод API не найден." msgstr "Метод API не найден."
@ -647,7 +647,7 @@ msgstr "Неподдерживаемый формат."
msgid "%1$s / Favorites from %2$s" msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Любимое от %2$s" msgstr "%1$s / Любимое от %2$s"
#: actions/apitimelinefavorites.php:120 #: actions/apitimelinefavorites.php:117
#, php-format #, php-format
msgid "%1$s updates favorited by %2$s / %2$s." msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "Обновления %1$s, отмеченные как любимые %2$s / %2$s." msgstr "Обновления %1$s, отмеченные как любимые %2$s / %2$s."
@ -658,7 +658,7 @@ msgstr "Обновления %1$s, отмеченные как любимые %2
msgid "%s timeline" msgid "%s timeline"
msgstr "Лента %s" msgstr "Лента %s"
#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 #: actions/apitimelinegroup.php:114 actions/apitimelineuser.php:126
#: actions/userrss.php:92 #: actions/userrss.php:92
#, php-format #, php-format
msgid "Updates from %1$s on %2$s!" msgid "Updates from %1$s on %2$s!"
@ -674,12 +674,12 @@ msgstr "%1$s / Обновления, упоминающие %2$s"
msgid "%1$s updates that reply to updates from %2$s / %3$s." msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s обновил этот ответ на сообщение: %2$s / %3$s." msgstr "%1$s обновил этот ответ на сообщение: %2$s / %3$s."
#: actions/apitimelinepublic.php:107 actions/publicrss.php:103 #: actions/apitimelinepublic.php:111 actions/publicrss.php:103
#, php-format #, php-format
msgid "%s public timeline" msgid "%s public timeline"
msgstr "Общая лента %s" msgstr "Общая лента %s"
#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #: actions/apitimelinepublic.php:115 actions/publicrss.php:105
#, php-format #, php-format
msgid "%s updates from everyone!" msgid "%s updates from everyone!"
msgstr "Обновления %s от всех!" msgstr "Обновления %s от всех!"
@ -689,7 +689,7 @@ msgstr "Обновления %s от всех!"
msgid "Repeated to %s" msgid "Repeated to %s"
msgstr "Повторено для %s" msgstr "Повторено для %s"
#: actions/apitimelineretweetsofme.php:112 #: actions/apitimelineretweetsofme.php:114
#, php-format #, php-format
msgid "Repeats of %s" msgid "Repeats of %s"
msgstr "Повторы за %s" msgstr "Повторы за %s"
@ -699,7 +699,7 @@ msgstr "Повторы за %s"
msgid "Notices tagged with %s" msgid "Notices tagged with %s"
msgstr "Записи с тегом %s" msgstr "Записи с тегом %s"
#: actions/apitimelinetag.php:108 actions/tagrss.php:64 #: actions/apitimelinetag.php:104 actions/tagrss.php:64
#, php-format #, php-format
msgid "Updates tagged with %1$s on %2$s!" msgid "Updates tagged with %1$s on %2$s!"
msgstr "Обновления с тегом %1$s на %2$s!" msgstr "Обновления с тегом %1$s на %2$s!"
@ -827,7 +827,7 @@ msgstr "Не блокировать этого пользователя"
msgid "Yes" msgid "Yes"
msgstr "Да" msgstr "Да"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Заблокировать пользователя." msgstr "Заблокировать пользователя."
@ -1243,7 +1243,7 @@ msgstr "Слишком длинное описание (максимум %d си
msgid "Could not update group." msgid "Could not update group."
msgstr "Не удаётся обновить информацию о группе." msgstr "Не удаётся обновить информацию о группе."
#: actions/editgroup.php:259 classes/User_group.php:390 #: actions/editgroup.php:259 classes/User_group.php:423
msgid "Could not create aliases." msgid "Could not create aliases."
msgstr "Не удаётся создать алиасы." msgstr "Не удаётся создать алиасы."
@ -1597,7 +1597,7 @@ msgstr "Пользователь уже заблокирован из групп
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Пользователь не является членом этой группы." msgstr "Пользователь не является членом этой группы."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Заблокировать пользователя из группы." msgstr "Заблокировать пользователя из группы."
@ -1699,19 +1699,19 @@ msgstr "Список пользователей, являющихся члена
msgid "Admin" msgid "Admin"
msgstr "Настройки" msgstr "Настройки"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Блокировать" msgstr "Блокировать"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Сделать пользователя администратором группы" msgstr "Сделать пользователя администратором группы"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Сделать администратором" msgstr "Сделать администратором"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Сделать этого пользователя администратором" msgstr "Сделать этого пользователя администратором"
@ -1743,7 +1743,7 @@ msgstr ""
"общими интересами. После присоединения к группе и вы сможете отправлять " "общими интересами. После присоединения к группе и вы сможете отправлять "
"сообщения до всех её участников, используя команду «!имягруппы». Не видите " "сообщения до всех её участников, используя команду «!имягруппы». Не видите "
"группу, которая вас интересует? Попробуйте [найти её](%%%%action.groupsearch%" "группу, которая вас интересует? Попробуйте [найти её](%%%%action.groupsearch%"
"%%%) или [создайте собственную!](%%%%action.newgroup%%%%)" "%%%) или [создайте собственную](%%%%action.newgroup%%%%)!"
#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122 #: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
msgid "Create a new group" msgid "Create a new group"
@ -2119,22 +2119,22 @@ msgstr ""
"Вход с вашим логином и паролем. Нет аккаунта? [Зарегистрируйте](%%action." "Вход с вашим логином и паролем. Нет аккаунта? [Зарегистрируйте](%%action."
"register%%) новый аккаунт." "register%%) новый аккаунт."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
"Только администратор может сделать другого пользователя администратором." "Только администратор может сделать другого пользователя администратором."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s уже является администратором группы «%2$s»." msgstr "%1$s уже является администратором группы «%2$s»."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Не удаётся получить запись принадлежности для %1$s к группе %2$s." msgstr "Не удаётся получить запись принадлежности для %1$s к группе %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Невозможно сделать %1$s администратором группы %2$s." msgstr "Невозможно сделать %1$s администратором группы %2$s."
@ -2334,8 +2334,8 @@ msgstr "тип содержимого "
msgid "Only " msgid "Only "
msgstr "Только " msgstr "Только "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Неподдерживаемый формат данных." msgstr "Неподдерживаемый формат данных."
@ -4504,7 +4504,7 @@ msgstr "Проблемы с сохранением входящих сообще
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Ошибка баз данных при вставке ответа для %s" msgstr "Ошибка баз данных при вставке ответа для %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1271
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -4514,11 +4514,11 @@ msgstr "RT @%1$s %2$s"
msgid "Welcome to %1$s, @%2$s!" msgid "Welcome to %1$s, @%2$s!"
msgstr "Добро пожаловать на %1$s, @%2$s!" msgstr "Добро пожаловать на %1$s, @%2$s!"
#: classes/User_group.php:380 #: classes/User_group.php:413
msgid "Could not create group." msgid "Could not create group."
msgstr "Не удаётся создать группу." msgstr "Не удаётся создать группу."
#: classes/User_group.php:409 #: classes/User_group.php:442
msgid "Could not set group membership." msgid "Could not set group membership."
msgstr "Не удаётся назначить членство в группе." msgstr "Не удаётся назначить членство в группе."
@ -6179,47 +6179,47 @@ msgstr "Сообщение"
msgid "Moderate" msgid "Moderate"
msgstr "Модерировать" msgstr "Модерировать"
#: lib/util.php:867 #: lib/util.php:871
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "пару секунд назад" msgstr "пару секунд назад"
#: lib/util.php:869 #: lib/util.php:873
msgid "about a minute ago" msgid "about a minute ago"
msgstr "около минуты назад" msgstr "около минуты назад"
#: lib/util.php:871 #: lib/util.php:875
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "около %d минут(ы) назад" msgstr "около %d минут(ы) назад"
#: lib/util.php:873 #: lib/util.php:877
msgid "about an hour ago" msgid "about an hour ago"
msgstr "около часа назад" msgstr "около часа назад"
#: lib/util.php:875 #: lib/util.php:879
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "около %d часа(ов) назад" msgstr "около %d часа(ов) назад"
#: lib/util.php:877 #: lib/util.php:881
msgid "about a day ago" msgid "about a day ago"
msgstr "около дня назад" msgstr "около дня назад"
#: lib/util.php:879 #: lib/util.php:883
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "около %d дня(ей) назад" msgstr "около %d дня(ей) назад"
#: lib/util.php:881 #: lib/util.php:885
msgid "about a month ago" msgid "about a month ago"
msgstr "около месяца назад" msgstr "около месяца назад"
#: lib/util.php:883 #: lib/util.php:887
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "около %d месяца(ев) назад" msgstr "около %d месяца(ев) назад"
#: lib/util.php:885 #: lib/util.php:889
msgid "about a year ago" msgid "about a year ago"
msgstr "около года назад" msgstr "около года назад"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-14 20:05+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -158,8 +158,8 @@ msgstr ""
msgid "You and friends" msgid "You and friends"
msgstr "" msgstr ""
#: actions/allrss.php:119 actions/apitimelinefriends.php:121 #: actions/allrss.php:119 actions/apitimelinefriends.php:119
#: actions/apitimelinehome.php:122 #: actions/apitimelinehome.php:120
#, php-format #, php-format
msgid "Updates from %1$s and friends on %2$s!" msgid "Updates from %1$s and friends on %2$s!"
msgstr "" msgstr ""
@ -180,12 +180,12 @@ msgstr ""
#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112 #: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137 #: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:137
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111 #: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
#: actions/apitimelinefavorites.php:146 actions/apitimelinefriends.php:155 #: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
#: actions/apitimelinegroup.php:150 actions/apitimelinehome.php:156 #: actions/apitimelinegroup.php:182 actions/apitimelinehome.php:184
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:152
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:194 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "" msgstr ""
@ -618,7 +618,7 @@ msgstr ""
msgid "%1$s / Favorites from %2$s" msgid "%1$s / Favorites from %2$s"
msgstr "" msgstr ""
#: actions/apitimelinefavorites.php:120 #: actions/apitimelinefavorites.php:117
#, php-format #, php-format
msgid "%1$s updates favorited by %2$s / %2$s." msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "" msgstr ""
@ -629,7 +629,7 @@ msgstr ""
msgid "%s timeline" msgid "%s timeline"
msgstr "" msgstr ""
#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 #: actions/apitimelinegroup.php:114 actions/apitimelineuser.php:126
#: actions/userrss.php:92 #: actions/userrss.php:92
#, php-format #, php-format
msgid "Updates from %1$s on %2$s!" msgid "Updates from %1$s on %2$s!"
@ -645,12 +645,12 @@ msgstr ""
msgid "%1$s updates that reply to updates from %2$s / %3$s." msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "" msgstr ""
#: actions/apitimelinepublic.php:107 actions/publicrss.php:103 #: actions/apitimelinepublic.php:111 actions/publicrss.php:103
#, php-format #, php-format
msgid "%s public timeline" msgid "%s public timeline"
msgstr "" msgstr ""
#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 #: actions/apitimelinepublic.php:115 actions/publicrss.php:105
#, php-format #, php-format
msgid "%s updates from everyone!" msgid "%s updates from everyone!"
msgstr "" msgstr ""
@ -660,7 +660,7 @@ msgstr ""
msgid "Repeated to %s" msgid "Repeated to %s"
msgstr "" msgstr ""
#: actions/apitimelineretweetsofme.php:112 #: actions/apitimelineretweetsofme.php:114
#, php-format #, php-format
msgid "Repeats of %s" msgid "Repeats of %s"
msgstr "" msgstr ""
@ -670,7 +670,7 @@ msgstr ""
msgid "Notices tagged with %s" msgid "Notices tagged with %s"
msgstr "" msgstr ""
#: actions/apitimelinetag.php:108 actions/tagrss.php:64 #: actions/apitimelinetag.php:104 actions/tagrss.php:64
#, php-format #, php-format
msgid "Updates tagged with %1$s on %2$s!" msgid "Updates tagged with %1$s on %2$s!"
msgstr "" msgstr ""
@ -794,7 +794,7 @@ msgstr ""
msgid "Yes" msgid "Yes"
msgstr "" msgstr ""
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "" msgstr ""
@ -1201,7 +1201,7 @@ msgstr ""
msgid "Could not update group." msgid "Could not update group."
msgstr "" msgstr ""
#: actions/editgroup.php:259 classes/User_group.php:390 #: actions/editgroup.php:259 classes/User_group.php:423
msgid "Could not create aliases." msgid "Could not create aliases."
msgstr "" msgstr ""
@ -1534,7 +1534,7 @@ msgstr ""
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "" msgstr ""
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "" msgstr ""
@ -1629,19 +1629,19 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "" msgstr ""
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -1989,21 +1989,21 @@ msgid ""
"(%%action.register%%) a new account." "(%%action.register%%) a new account."
msgstr "" msgstr ""
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "" msgstr ""
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "" msgstr ""
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "" msgstr ""
@ -2195,8 +2195,8 @@ msgstr ""
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4214,7 +4214,7 @@ msgstr ""
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
#: classes/Notice.php:1231 #: classes/Notice.php:1271
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -4224,11 +4224,11 @@ msgstr ""
msgid "Welcome to %1$s, @%2$s!" msgid "Welcome to %1$s, @%2$s!"
msgstr "" msgstr ""
#: classes/User_group.php:380 #: classes/User_group.php:413
msgid "Could not create group." msgid "Could not create group."
msgstr "" msgstr ""
#: classes/User_group.php:409 #: classes/User_group.php:442
msgid "Could not set group membership." msgid "Could not set group membership."
msgstr "" msgstr ""
@ -5737,47 +5737,47 @@ msgstr ""
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:871
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "" msgstr ""
#: lib/util.php:869
msgid "about a minute ago"
msgstr ""
#: lib/util.php:871
#, php-format
msgid "about %d minutes ago"
msgstr ""
#: lib/util.php:873 #: lib/util.php:873
msgid "about an hour ago" msgid "about a minute ago"
msgstr "" msgstr ""
#: lib/util.php:875 #: lib/util.php:875
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d minutes ago"
msgstr "" msgstr ""
#: lib/util.php:877 #: lib/util.php:877
msgid "about a day ago" msgid "about an hour ago"
msgstr "" msgstr ""
#: lib/util.php:879 #: lib/util.php:879
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d hours ago"
msgstr "" msgstr ""
#: lib/util.php:881 #: lib/util.php:881
msgid "about a month ago" msgid "about a day ago"
msgstr "" msgstr ""
#: lib/util.php:883 #: lib/util.php:883
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d days ago"
msgstr "" msgstr ""
#: lib/util.php:885 #: lib/util.php:885
msgid "about a month ago"
msgstr ""
#: lib/util.php:887
#, php-format
msgid "about %d months ago"
msgstr ""
#: lib/util.php:889
msgid "about a year ago" msgid "about a year ago"
msgstr "" msgstr ""

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:55:00+0000\n" "PO-Revision-Date: 2010-02-11 08:15:57+0000\n"
"Language-Team: Swedish\n" "Language-Team: Swedish\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: sv\n" "X-Language-Code: sv\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -196,7 +196,7 @@ msgstr "Uppdateringar från %1$s och vänner på %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "API-metod hittades inte." msgstr "API-metod hittades inte."
@ -815,7 +815,7 @@ msgstr "Blockera inte denna användare"
msgid "Yes" msgid "Yes"
msgstr "Ja" msgstr "Ja"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Blockera denna användare" msgstr "Blockera denna användare"
@ -1577,7 +1577,7 @@ msgstr "Användaren är redan blockerad från grupp."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Användare är inte en gruppmedlem." msgstr "Användare är inte en gruppmedlem."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Blockera användare från grupp" msgstr "Blockera användare från grupp"
@ -1678,19 +1678,19 @@ msgstr "En lista av användarna i denna grupp."
msgid "Admin" msgid "Admin"
msgstr "Administratör" msgstr "Administratör"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Blockera" msgstr "Blockera"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Gör användare till en administratör för gruppen" msgstr "Gör användare till en administratör för gruppen"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Gör till administratör" msgstr "Gör till administratör"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Gör denna användare till administratör" msgstr "Gör denna användare till administratör"
@ -2097,21 +2097,21 @@ msgstr ""
"Logga in med ditt användarnamn och lösenord. Har du inget användarnamn ännu? " "Logga in med ditt användarnamn och lösenord. Har du inget användarnamn ännu? "
"[Registrera](%%action.register%%) ett nytt konto." "[Registrera](%%action.register%%) ett nytt konto."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "Bara en administratör kan göra en annan användare till administratör." msgstr "Bara en administratör kan göra en annan användare till administratör."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s är redan en administratör för grupp \"%2$s\"." msgstr "%1$s är redan en administratör för grupp \"%2$s\"."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Kan inte hämta uppgift om medlemskap för %1$s i grupp %2$s." msgstr "Kan inte hämta uppgift om medlemskap för %1$s i grupp %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Kan inte göra %1$s till en administratör för grupp %2$s." msgstr "Kan inte göra %1$s till en administratör för grupp %2$s."
@ -2314,8 +2314,8 @@ msgstr "innehållstyp "
msgid "Only " msgid "Only "
msgstr "Bara " msgstr "Bara "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Ett dataformat som inte stödjs" msgstr "Ett dataformat som inte stödjs"
@ -3548,8 +3548,8 @@ msgid ""
"[StatusNet](http://status.net/) tool. Its members share short messages about " "[StatusNet](http://status.net/) tool. Its members share short messages about "
"their life and interests. " "their life and interests. "
msgstr "" msgstr ""
"**%s** är en användargrupp på %%%%site.name%%%%, en [mikroblogg](http://en." "**%s** är en användargrupp på %%%%site.name%%%%, en [mikroblogg](http://sv."
"wikipedia.org/wiki/Micro-blogging)tjänst baserad den fria programvaran " "wikipedia.org/wiki/Mikroblogg)tjänst baserad den fria programvaran "
"[StatusNet](http://status.net/). Dess medlemmar delar korta meddelande om " "[StatusNet](http://status.net/). Dess medlemmar delar korta meddelande om "
"sina liv och intressen. " "sina liv och intressen. "
@ -3644,8 +3644,8 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to " "[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))" "follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr "" msgstr ""
"**%s** har ett konto på %%%%site.name%%%%, en [mikroblogg](http://en." "**%s** har ett konto på %%%%site.name%%%%, en [mikroblogg](http://sv."
"wikipedia.org/wiki/Micro-blogging)tjänst baserad på den fria programvaran " "wikipedia.org/wiki/Mikroblogg)tjänst baserad på den fria programvaran "
"[StatusNet](http://status.net/). [Gå med nu](%%%%action.register%%%%) för " "[StatusNet](http://status.net/). [Gå med nu](%%%%action.register%%%%) för "
"att följa **%s**s notiser och många fler! ([Läs mer](%%%%doc.help%%%%))" "att följa **%s**s notiser och många fler! ([Läs mer](%%%%doc.help%%%%))"
@ -3656,8 +3656,8 @@ msgid ""
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " "wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. " "[StatusNet](http://status.net/) tool. "
msgstr "" msgstr ""
"**%s** har ett konto på %%%%site.name%%%%, en [mikroblogg](http://en." "**%s** har ett konto på %%%%site.name%%%%, en [mikroblogg](http://sv."
"wikipedia.org/wiki/Micro-blogging)tjänst baserad på den fria programvaran " "wikipedia.org/wiki/Mikroblogg)tjänst baserad på den fria programvaran "
"[StatusNet](http://status.net/). " "[StatusNet](http://status.net/). "
#: actions/showstream.php:305 #: actions/showstream.php:305
@ -4376,7 +4376,7 @@ msgid ""
"along with this program. If not, see %s." "along with this program. If not, see %s."
msgstr "" msgstr ""
"Du bör ha fått en kopia av GNU Affero General Public License tillsammans med " "Du bör ha fått en kopia av GNU Affero General Public License tillsammans med "
"detta program. Om inte, se% s." "detta program. Om inte, se %s."
#: actions/version.php:189 #: actions/version.php:189
msgid "Plugins" msgid "Plugins"
@ -4483,7 +4483,7 @@ msgstr "Problem med att spara gruppinkorg."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Databasfel vid infogning av svar: %s" msgstr "Databasfel vid infogning av svar: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -6150,47 +6150,47 @@ msgstr "Meddelande"
msgid "Moderate" msgid "Moderate"
msgstr "Moderera" msgstr "Moderera"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "ett par sekunder sedan" msgstr "ett par sekunder sedan"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "för nån minut sedan" msgstr "för nån minut sedan"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "för %d minuter sedan" msgstr "för %d minuter sedan"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "för en timma sedan" msgstr "för en timma sedan"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "för %d timmar sedan" msgstr "för %d timmar sedan"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "för en dag sedan" msgstr "för en dag sedan"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "för %d dagar sedan" msgstr "för %d dagar sedan"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "för en månad sedan" msgstr "för en månad sedan"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "för %d månader sedan" msgstr "för %d månader sedan"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "för ett år sedan" msgstr "för ett år sedan"

View File

@ -8,12 +8,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:55:04+0000\n" "PO-Revision-Date: 2010-02-11 08:16:03+0000\n"
"Language-Team: Telugu\n" "Language-Team: Telugu\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: te\n" "X-Language-Code: te\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -190,7 +190,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "నిర్ధారణ సంకేతం కనబడలేదు." msgstr "నిర్ధారణ సంకేతం కనబడలేదు."
@ -810,7 +810,7 @@ msgstr "ఈ వాడుకరిని నిరోధించకు"
msgid "Yes" msgid "Yes"
msgstr "అవును" msgstr "అవును"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "ఈ వాడుకరిని నిరోధించు" msgstr "ఈ వాడుకరిని నిరోధించు"
@ -1561,7 +1561,7 @@ msgstr "వాడుకరిని ఇప్పటికే గుంపున
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "వాడుకరి ఈ గుంపులో సభ్యులు కాదు." msgstr "వాడుకరి ఈ గుంపులో సభ్యులు కాదు."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "వాడుకరిని గుంపు నుండి నిరోధించు" msgstr "వాడుకరిని గుంపు నుండి నిరోధించు"
@ -1661,19 +1661,19 @@ msgstr "ఈ గుంపులో వాడుకరులు జాబితా
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "నిరోధించు" msgstr "నిరోధించు"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "వాడుకరిని గుంపుకి ఒక నిర్వాహకునిగా చేయి" msgstr "వాడుకరిని గుంపుకి ఒక నిర్వాహకునిగా చేయి"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "నిర్వాహకున్ని చేయి" msgstr "నిర్వాహకున్ని చేయి"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "ఈ వాడుకరిని నిర్వాహకున్ని చేయి" msgstr "ఈ వాడుకరిని నిర్వాహకున్ని చేయి"
@ -2033,21 +2033,21 @@ msgstr ""
"మీ వాడుకరిపేరు మరియు సంకేతపదాలతో ప్రవేశించండి. మీకు ఇంకా వాడుకరిపేరు లేదా? కొత్త ఖాతాని [నమోదుచేసుకోండి]" "మీ వాడుకరిపేరు మరియు సంకేతపదాలతో ప్రవేశించండి. మీకు ఇంకా వాడుకరిపేరు లేదా? కొత్త ఖాతాని [నమోదుచేసుకోండి]"
"(%%action.register%%)." "(%%action.register%%)."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "నిర్వాహకులు మాత్రమే మరొక వాడుకరిని నిర్వాహకునిగా చేయగలరు." msgstr "నిర్వాహకులు మాత్రమే మరొక వాడుకరిని నిర్వాహకునిగా చేయగలరు."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s ఇప్పటికే \"%2$s\" గుంపు యొక్క ఒక నిర్వాకులు." msgstr "%1$s ఇప్పటికే \"%2$s\" గుంపు యొక్క ఒక నిర్వాకులు."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "వాడుకరి %sని %s గుంపు నుండి తొలగించలేకపోయాం" msgstr "వాడుకరి %sని %s గుంపు నుండి తొలగించలేకపోయాం"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "%s ఇప్పటికే \"%s\" గుంపు యొక్క ఒక నిర్వాకులు." msgstr "%s ఇప్పటికే \"%s\" గుంపు యొక్క ఒక నిర్వాకులు."
@ -2246,8 +2246,8 @@ msgstr "విషయ రకం "
msgid "Only " msgid "Only "
msgstr "మాత్రమే " msgstr "మాత్రమే "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4330,7 +4330,7 @@ msgstr "సందేశాన్ని భద్రపరచడంలో పొ
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "" msgstr ""
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -5924,47 +5924,47 @@ msgstr "సందేశం"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "కొన్ని క్షణాల క్రితం" msgstr "కొన్ని క్షణాల క్రితం"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "ఓ నిమిషం క్రితం" msgstr "ఓ నిమిషం క్రితం"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "%d నిమిషాల క్రితం" msgstr "%d నిమిషాల క్రితం"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "ఒక గంట క్రితం" msgstr "ఒక గంట క్రితం"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "%d గంటల క్రితం" msgstr "%d గంటల క్రితం"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "ఓ రోజు క్రితం" msgstr "ఓ రోజు క్రితం"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "%d రోజుల క్రితం" msgstr "%d రోజుల క్రితం"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "ఓ నెల క్రితం" msgstr "ఓ నెల క్రితం"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "%d నెలల క్రితం" msgstr "%d నెలల క్రితం"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "ఒక సంవత్సరం క్రితం" msgstr "ఒక సంవత్సరం క్రితం"

View File

@ -9,12 +9,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:55:08+0000\n" "PO-Revision-Date: 2010-02-11 08:16:08+0000\n"
"Language-Team: Turkish\n" "Language-Team: Turkish\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: tr\n" "X-Language-Code: tr\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -196,7 +196,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "Onay kodu bulunamadı." msgstr "Onay kodu bulunamadı."
@ -838,7 +838,7 @@ msgstr "Böyle bir kullanıcı yok."
msgid "Yes" msgid "Yes"
msgstr "" msgstr ""
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
#, fuzzy #, fuzzy
msgid "Block this user" msgid "Block this user"
msgstr "Böyle bir kullanıcı yok." msgstr "Böyle bir kullanıcı yok."
@ -1628,7 +1628,7 @@ msgstr "Kullanıcının profili yok."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Bize o profili yollamadınız" msgstr "Bize o profili yollamadınız"
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "Böyle bir kullanıcı yok." msgstr "Böyle bir kullanıcı yok."
@ -1732,19 +1732,19 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "" msgstr ""
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2120,21 +2120,21 @@ msgstr ""
"duruyorsunuz, hemen bir [yeni hesap oluşturun](%%action.register%%) ya da " "duruyorsunuz, hemen bir [yeni hesap oluşturun](%%action.register%%) ya da "
"[OpenID](%%action.openidlogin%%) ile giriş yapın." "[OpenID](%%action.openidlogin%%) ile giriş yapın."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "Kullanıcının profili yok." msgstr "Kullanıcının profili yok."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "OpenID formu yaratılamadı: %s" msgstr "OpenID formu yaratılamadı: %s"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Kullanıcının profili yok." msgstr "Kullanıcının profili yok."
@ -2333,8 +2333,8 @@ msgstr "Bağlan"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4452,7 +4452,7 @@ msgstr "Durum mesajını kaydederken hata oluştu."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Cevap eklenirken veritabanı hatası: %s" msgstr "Cevap eklenirken veritabanı hatası: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -6067,47 +6067,47 @@ msgstr ""
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "birkaç saniye önce" msgstr "birkaç saniye önce"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "yaklaşık bir dakika önce" msgstr "yaklaşık bir dakika önce"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "yaklaşık %d dakika önce" msgstr "yaklaşık %d dakika önce"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "yaklaşık bir saat önce" msgstr "yaklaşık bir saat önce"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "yaklaşık %d saat önce" msgstr "yaklaşık %d saat önce"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "yaklaşık bir gün önce" msgstr "yaklaşık bir gün önce"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "yaklaşık %d gün önce" msgstr "yaklaşık %d gün önce"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "yaklaşık bir ay önce" msgstr "yaklaşık bir ay önce"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "yaklaşık %d ay önce" msgstr "yaklaşık %d ay önce"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "yaklaşık bir yıl önce" msgstr "yaklaşık bir yıl önce"

View File

@ -10,12 +10,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:55:11+0000\n" "PO-Revision-Date: 2010-02-11 08:16:16+0000\n"
"Language-Team: Ukrainian\n" "Language-Team: Ukrainian\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: uk\n" "X-Language-Code: uk\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -198,7 +198,7 @@ msgstr "Оновлення від %1$s та друзів на %2$s!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
msgid "API method not found." msgid "API method not found."
msgstr "API метод не знайдено." msgstr "API метод не знайдено."
@ -825,7 +825,7 @@ msgstr "Не блокувати цього користувача"
msgid "Yes" msgid "Yes"
msgstr "Так" msgstr "Так"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
msgid "Block this user" msgid "Block this user"
msgstr "Блокувати користувача" msgstr "Блокувати користувача"
@ -1581,7 +1581,7 @@ msgstr "Користувача заблоковано в цій групі."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Користувач не є учасником групи." msgstr "Користувач не є учасником групи."
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
msgid "Block user from group" msgid "Block user from group"
msgstr "Блокувати користувача в групі" msgstr "Блокувати користувача в групі"
@ -1683,19 +1683,19 @@ msgstr "Список учасників цієї групи."
msgid "Admin" msgid "Admin"
msgstr "Адмін" msgstr "Адмін"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "Блок" msgstr "Блок"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Надати користувачеві права адміністратора" msgstr "Надати користувачеві права адміністратора"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "Зробити адміном" msgstr "Зробити адміном"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Надати цьому користувачеві права адміністратора" msgstr "Надати цьому користувачеві права адміністратора"
@ -2106,22 +2106,22 @@ msgstr ""
"Увійти викристовуючи ім’я та пароль. Ще не маєте імені користувача? " "Увійти викристовуючи ім’я та пароль. Ще не маєте імені користувача? "
"[Зареєструвати](%%action.register%%) новий акаунт." "[Зареєструвати](%%action.register%%) новий акаунт."
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
"Лише користувач з правами адміністратора може призначити інших адмінів групи." "Лише користувач з правами адміністратора може призначити інших адмінів групи."
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s вже є адміном у групі «%2$s»." msgstr "%1$s вже є адміном у групі «%2$s»."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, php-format #, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Не можна отримати запис для %1$s щодо членства у групі %2$s." msgstr "Не можна отримати запис для %1$s щодо членства у групі %2$s."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, php-format #, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Не можна надати %1$s права адміна в групі %2$s." msgstr "Не можна надати %1$s права адміна в групі %2$s."
@ -2323,8 +2323,8 @@ msgstr "тип змісту "
msgid "Only " msgid "Only "
msgstr "Лише " msgstr "Лише "
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Такий формат даних не підтримується." msgstr "Такий формат даних не підтримується."
@ -4490,7 +4490,7 @@ msgstr "Проблема при збереженні вхідних дописі
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Помилка бази даних при додаванні відповіді: %s" msgstr "Помилка бази даних при додаванні відповіді: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s" msgstr "RT @%1$s %2$s"
@ -6159,47 +6159,47 @@ msgstr "Повідомлення"
msgid "Moderate" msgid "Moderate"
msgstr "Модерувати" msgstr "Модерувати"
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "мить тому" msgstr "мить тому"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "хвилину тому" msgstr "хвилину тому"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "близько %d хвилин тому" msgstr "близько %d хвилин тому"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "годину тому" msgstr "годину тому"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "близько %d годин тому" msgstr "близько %d годин тому"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "день тому" msgstr "день тому"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "близько %d днів тому" msgstr "близько %d днів тому"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "місяць тому" msgstr "місяць тому"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "близько %d місяців тому" msgstr "близько %d місяців тому"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "рік тому" msgstr "рік тому"

View File

@ -7,12 +7,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:55:14+0000\n" "PO-Revision-Date: 2010-02-11 08:16:19+0000\n"
"Language-Team: Vietnamese\n" "Language-Team: Vietnamese\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: vi\n" "X-Language-Code: vi\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -195,7 +195,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "Phương thức API không tìm thấy!" msgstr "Phương thức API không tìm thấy!"
@ -843,7 +843,7 @@ msgstr "Bỏ chặn người dùng này"
msgid "Yes" msgid "Yes"
msgstr "Có" msgstr "Có"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
#, fuzzy #, fuzzy
msgid "Block this user" msgid "Block this user"
msgstr "Ban user" msgstr "Ban user"
@ -1668,7 +1668,7 @@ msgstr "Người dùng không có thông tin."
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "Bạn chưa cập nhật thông tin riêng" msgstr "Bạn chưa cập nhật thông tin riêng"
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "Ban user" msgstr "Ban user"
@ -1775,20 +1775,20 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "" msgstr ""
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
#, fuzzy #, fuzzy
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "Bạn phải đăng nhập vào mới có thể gửi thư mời những " msgstr "Bạn phải đăng nhập vào mới có thể gửi thư mời những "
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
#, fuzzy #, fuzzy
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "Kênh mà bạn tham gia" msgstr "Kênh mà bạn tham gia"
@ -2200,21 +2200,21 @@ msgstr ""
"khoản, [hãy đăng ký](%%action.register%%) tài khoản mới, hoặc thử đăng nhập " "khoản, [hãy đăng ký](%%action.register%%) tài khoản mới, hoặc thử đăng nhập "
"bằng [OpenID](%%action.openidlogin%%). " "bằng [OpenID](%%action.openidlogin%%). "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "Người dùng không có thông tin." msgstr "Người dùng không có thông tin."
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "Không thể theo bạn này: %s đã có trong danh sách bạn bè của bạn rồi." msgstr "Không thể theo bạn này: %s đã có trong danh sách bạn bè của bạn rồi."
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "Bạn phải đăng nhập vào mới có thể gửi thư mời những " msgstr "Bạn phải đăng nhập vào mới có thể gửi thư mời những "
@ -2422,8 +2422,8 @@ msgstr "Kết nối"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "Không hỗ trợ định dạng dữ liệu này." msgstr "Không hỗ trợ định dạng dữ liệu này."
@ -4604,7 +4604,7 @@ msgstr "Có lỗi xảy ra khi lưu tin nhắn."
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "Lỗi cơ sở dữ liệu khi chèn trả lời: %s" msgstr "Lỗi cơ sở dữ liệu khi chèn trả lời: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%s (%s)" msgstr "%s (%s)"
@ -6309,47 +6309,47 @@ msgstr "Tin mới nhất"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "vài giây trước" msgstr "vài giây trước"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "1 phút trước" msgstr "1 phút trước"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "%d phút trước" msgstr "%d phút trước"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "1 giờ trước" msgstr "1 giờ trước"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "%d giờ trước" msgstr "%d giờ trước"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "1 ngày trước" msgstr "1 ngày trước"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "%d ngày trước" msgstr "%d ngày trước"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "1 tháng trước" msgstr "1 tháng trước"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "%d tháng trước" msgstr "%d tháng trước"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "1 năm trước" msgstr "1 năm trước"

View File

@ -10,12 +10,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:55:17+0000\n" "PO-Revision-Date: 2010-02-11 08:16:22+0000\n"
"Language-Team: Simplified Chinese\n" "Language-Team: Simplified Chinese\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: zh-hans\n" "X-Language-Code: zh-hans\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -197,7 +197,7 @@ msgstr "来自%2$s 上 %1$s 和好友的更新!"
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "API 方法未实现!" msgstr "API 方法未实现!"
@ -837,7 +837,7 @@ msgstr "取消阻止次用户"
msgid "Yes" msgid "Yes"
msgstr "是" msgstr "是"
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
#, fuzzy #, fuzzy
msgid "Block this user" msgid "Block this user"
msgstr "阻止该用户" msgstr "阻止该用户"
@ -1646,7 +1646,7 @@ msgstr "用户没有个人信息。"
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "您未告知此个人信息" msgstr "您未告知此个人信息"
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "阻止用户" msgstr "阻止用户"
@ -1752,21 +1752,21 @@ msgstr "该组成员列表。"
msgid "Admin" msgid "Admin"
msgstr "admin管理员" msgstr "admin管理员"
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "阻止" msgstr "阻止"
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
#, fuzzy #, fuzzy
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "只有admin才能编辑这个组" msgstr "只有admin才能编辑这个组"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
#, fuzzy #, fuzzy
msgid "Make Admin" msgid "Make Admin"
msgstr "admin管理员" msgstr "admin管理员"
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2155,21 +2155,21 @@ msgstr ""
"请使用你的帐号和密码登入。没有帐号?[注册](%%action.register%%) 一个新帐号, " "请使用你的帐号和密码登入。没有帐号?[注册](%%action.register%%) 一个新帐号, "
"或使用 [OpenID](%%action.openidlogin%%). " "或使用 [OpenID](%%action.openidlogin%%). "
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, fuzzy, php-format #, fuzzy, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "用户没有个人信息。" msgstr "用户没有个人信息。"
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "无法订阅用户:未找到。" msgstr "无法订阅用户:未找到。"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "只有admin才能编辑这个组" msgstr "只有admin才能编辑这个组"
@ -2372,8 +2372,8 @@ msgstr "连接"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "不支持的数据格式。" msgstr "不支持的数据格式。"
@ -4530,7 +4530,7 @@ msgstr "保存通告时出错。"
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "添加回复时数据库出错:%s" msgstr "添加回复时数据库出错:%s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, fuzzy, php-format #, fuzzy, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)" msgstr "%1$s (%2$s)"
@ -6174,47 +6174,47 @@ msgstr "新消息"
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "几秒前" msgstr "几秒前"
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "一分钟前" msgstr "一分钟前"
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "%d 分钟前" msgstr "%d 分钟前"
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "一小时前" msgstr "一小时前"
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "%d 小时前" msgstr "%d 小时前"
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "一天前" msgstr "一天前"
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "%d 天前" msgstr "%d 天前"
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "一个月前" msgstr "一个月前"
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "%d 个月前" msgstr "%d 个月前"
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "一年前" msgstr "一年前"

View File

@ -7,12 +7,12 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: StatusNet\n" "Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-05 23:53+0000\n" "POT-Creation-Date: 2010-02-11 08:14+0000\n"
"PO-Revision-Date: 2010-02-05 23:55:19+0000\n" "PO-Revision-Date: 2010-02-11 08:16:25+0000\n"
"Language-Team: Traditional Chinese\n" "Language-Team: Traditional Chinese\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: MediaWiki 1.16alpha (r62048); Translate extension (2010-01-16)\n" "X-Generator: MediaWiki 1.16alpha (r62295); Translate extension (2010-01-16)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: zh-hant\n" "X-Language-Code: zh-hant\n"
"X-Message-Group: out-statusnet\n" "X-Message-Group: out-statusnet\n"
@ -193,7 +193,7 @@ msgstr ""
#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 #: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131
#: actions/apitimelineretweetedtome.php:121 #: actions/apitimelineretweetedtome.php:121
#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 #: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141
#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 #: actions/apitimelineuser.php:166 actions/apiusershow.php:101
#, fuzzy #, fuzzy
msgid "API method not found." msgid "API method not found."
msgstr "確認碼遺失" msgstr "確認碼遺失"
@ -828,7 +828,7 @@ msgstr "無此使用者"
msgid "Yes" msgid "Yes"
msgstr "" msgstr ""
#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 #: actions/block.php:144 actions/groupmembers.php:348 lib/blockform.php:80
#, fuzzy #, fuzzy
msgid "Block this user" msgid "Block this user"
msgstr "無此使用者" msgstr "無此使用者"
@ -1612,7 +1612,7 @@ msgstr ""
msgid "User is not a member of group." msgid "User is not a member of group."
msgstr "" msgstr ""
#: actions/groupblock.php:136 actions/groupmembers.php:314 #: actions/groupblock.php:136 actions/groupmembers.php:316
#, fuzzy #, fuzzy
msgid "Block user from group" msgid "Block user from group"
msgstr "無此使用者" msgstr "無此使用者"
@ -1714,19 +1714,19 @@ msgstr ""
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:346 lib/blockform.php:69 #: actions/groupmembers.php:348 lib/blockform.php:69
msgid "Block" msgid "Block"
msgstr "" msgstr ""
#: actions/groupmembers.php:441 #: actions/groupmembers.php:443
msgid "Make user an admin of the group" msgid "Make user an admin of the group"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make Admin" msgid "Make Admin"
msgstr "" msgstr ""
#: actions/groupmembers.php:473 #: actions/groupmembers.php:475
msgid "Make this user an admin" msgid "Make this user an admin"
msgstr "" msgstr ""
@ -2082,21 +2082,21 @@ msgid ""
"(%%action.register%%) a new account." "(%%action.register%%) a new account."
msgstr "" msgstr ""
#: actions/makeadmin.php:91 #: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin." msgid "Only an admin can make another user an admin."
msgstr "" msgstr ""
#: actions/makeadmin.php:95 #: actions/makeadmin.php:96
#, php-format #, php-format
msgid "%1$s is already an admin for group \"%2$s\"." msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "" msgstr ""
#: actions/makeadmin.php:132 #: actions/makeadmin.php:133
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't get membership record for %1$s in group %2$s." msgid "Can't get membership record for %1$s in group %2$s."
msgstr "無法從 %s 建立OpenID" msgstr "無法從 %s 建立OpenID"
#: actions/makeadmin.php:145 #: actions/makeadmin.php:146
#, fuzzy, php-format #, fuzzy, php-format
msgid "Can't make %1$s an admin for group %2$s." msgid "Can't make %1$s an admin for group %2$s."
msgstr "無法從 %s 建立OpenID" msgstr "無法從 %s 建立OpenID"
@ -2292,8 +2292,8 @@ msgstr "連結"
msgid "Only " msgid "Only "
msgstr "" msgstr ""
#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1039 #: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1040
#: lib/api.php:1067 lib/api.php:1177 #: lib/api.php:1068 lib/api.php:1178
msgid "Not a supported data format." msgid "Not a supported data format."
msgstr "" msgstr ""
@ -4374,7 +4374,7 @@ msgstr "儲存使用者發生錯誤"
msgid "DB error inserting reply: %s" msgid "DB error inserting reply: %s"
msgstr "增加回覆時,資料庫發生錯誤: %s" msgstr "增加回覆時,資料庫發生錯誤: %s"
#: classes/Notice.php:1231 #: classes/Notice.php:1235
#, php-format #, php-format
msgid "RT @%1$s %2$s" msgid "RT @%1$s %2$s"
msgstr "" msgstr ""
@ -5962,47 +5962,47 @@ msgstr ""
msgid "Moderate" msgid "Moderate"
msgstr "" msgstr ""
#: lib/util.php:867 #: lib/util.php:870
msgid "a few seconds ago" msgid "a few seconds ago"
msgstr "" msgstr ""
#: lib/util.php:869 #: lib/util.php:872
msgid "about a minute ago" msgid "about a minute ago"
msgstr "" msgstr ""
#: lib/util.php:871 #: lib/util.php:874
#, php-format #, php-format
msgid "about %d minutes ago" msgid "about %d minutes ago"
msgstr "" msgstr ""
#: lib/util.php:873 #: lib/util.php:876
msgid "about an hour ago" msgid "about an hour ago"
msgstr "" msgstr ""
#: lib/util.php:875 #: lib/util.php:878
#, php-format #, php-format
msgid "about %d hours ago" msgid "about %d hours ago"
msgstr "" msgstr ""
#: lib/util.php:877 #: lib/util.php:880
msgid "about a day ago" msgid "about a day ago"
msgstr "" msgstr ""
#: lib/util.php:879 #: lib/util.php:882
#, php-format #, php-format
msgid "about %d days ago" msgid "about %d days ago"
msgstr "" msgstr ""
#: lib/util.php:881 #: lib/util.php:884
msgid "about a month ago" msgid "about a month ago"
msgstr "" msgstr ""
#: lib/util.php:883 #: lib/util.php:886
#, php-format #, php-format
msgid "about %d months ago" msgid "about %d months ago"
msgstr "" msgstr ""
#: lib/util.php:885 #: lib/util.php:888
msgid "about a year ago" msgid "about a year ago"
msgstr "" msgstr ""

View File

@ -1,115 +0,0 @@
<?php
/*
StatusNet Plugin: 0.9
Plugin Name: FeedSub
Plugin URI: http://status.net/wiki/Feed_subscription
Description: FeedSub allows subscribing to real-time updates from external feeds supporting PubHubSubbub protocol.
Version: 0.1
Author: Brion Vibber <brion@status.net>
Author URI: 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/>.
*/
/**
* @package FeedSubPlugin
* @maintainer Brion Vibber <brion@status.net>
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
define('FEEDSUB_SERVICE', 100); // fixme -- avoid hardcoding these?
// We bundle the XML_Parse_Feed library...
set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/extlib');
class FeedSubException extends Exception
{
}
class FeedSubPlugin extends Plugin
{
/**
* Hook for RouterInitialized event.
*
* @param Net_URL_Mapper $m path-to-action mapper
* @return boolean hook return
*/
function onRouterInitialized($m)
{
$m->connect('feedsub/callback/:feed',
array('action' => 'feedsubcallback'),
array('feed' => '[0-9]+'));
$m->connect('settings/feedsub',
array('action' => 'feedsubsettings'));
return true;
}
/**
* Add the feed settings page to the Connect Settings menu
*
* @param Action &$action The calling page
*
* @return boolean hook return
*/
function onEndConnectSettingsNav(&$action)
{
$action_name = $action->trimmed('action');
$action->menuItem(common_local_url('feedsubsettings'),
_m('Feeds'),
_m('Feed subscription options'),
$action_name === 'feedsubsettings');
return true;
}
/**
* Automatically load the actions and libraries used by the plugin
*
* @param Class $cls the class
*
* @return boolean hook return
*
*/
function onAutoload($cls)
{
$base = dirname(__FILE__);
$lower = strtolower($cls);
$files = array("$base/$lower.php");
if (substr($lower, -6) == 'action') {
$files[] = "$base/actions/" . substr($lower, 0, -6) . ".php";
}
foreach ($files as $file) {
if (file_exists($file)) {
include_once $file;
return false;
}
}
return true;
}
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->ensureTable('feedinfo', Feedinfo::schemaDef());
return true;
}
}

View File

@ -1,268 +0,0 @@
<?php
/*
Subscription flow:
$feedinfo->subscribe()
generate random verification token
save to verify_token
sends a sub request to the hub...
feedsub/callback
hub sends confirmation back to us via GET
We verify the request, then echo back the challenge.
On our end, we save the time we subscribed and the lease expiration
feedsub/callback
hub sends us updates via POST
?
*/
class FeedDBException extends FeedSubException
{
public $obj;
function __construct($obj)
{
parent::__construct('Database insert failure');
$this->obj = $obj;
}
}
class Feedinfo extends Memcached_DataObject
{
public $__table = 'feedinfo';
public $id;
public $profile_id;
public $feeduri;
public $homeuri;
public $huburi;
// PuSH subscription data
public $verify_token;
public $sub_start;
public $sub_end;
public $created;
public $lastupdate;
public /*static*/ function staticGet($k, $v=null)
{
return parent::staticGet(__CLASS__, $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('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()
{
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);
}
/**
* @param FeedMunger $munger
* @return Feedinfo
*/
public static function ensureProfile($munger)
{
$feedinfo = $munger->feedinfo();
$current = self::staticGet('feeduri', $feedinfo->feeduri);
if ($current) {
// @fixme we should probably update info as necessary
return $current;
}
$feedinfo->query('BEGIN');
try {
$profile = $munger->profile();
$result = $profile->insert();
if (empty($result)) {
throw new FeedDBException($profile);
}
$feedinfo->profile_id = $profile->id;
$result = $feedinfo->insert();
if (empty($result)) {
throw new FeedDBException($feedinfo);
}
$feedinfo->query('COMMIT');
} catch (FeedDBException $e) {
common_log_db_error($e->obj, 'INSERT', __FILE__);
$feedinfo->query('ROLLBACK');
return false;
}
return $feedinfo;
}
/**
* Send a subscription request to the hub for this feed.
* The hub will later send us a confirmation POST to /feedsub/callback.
*
* @return bool true on success, false on failure
*/
public function subscribe()
{
// @fixme use the verification token
#$token = md5(mt_rand() . ':' . $this->feeduri);
#$this->verify_token = $token;
#$this->update(); // @fixme
try {
$callback = common_local_url('feedsubcallback', array('feed' => $this->id));
$headers = array('Content-Type: application/x-www-form-urlencoded');
$post = array('hub.mode' => 'subscribe',
'hub.callback' => $callback,
'hub.verify' => 'async',
//'hub.verify_token' => $token,
//'hub.lease_seconds' => 0,
'hub.topic' => $this->feeduri);
$client = new HTTPClient();
$response = $client->post($this->huburi, $headers, $post);
if ($response->getStatus() >= 200 && $response->getStatus() < 300) {
common_log(LOG_INFO, __METHOD__ . ': sub req ok');
return true;
} else {
common_log(LOG_INFO, __METHOD__ . ': sub req failed');
return false;
}
} catch (Exception $e) {
// wtf!
common_log(LOG_ERR, __METHOD__ . ": error \"{$e->getMessage()}\" hitting hub $this->huburi subscribing to $this->feeduri");
return false;
}
}
/**
* Read and post notices for updates from the feed.
* Currently assumes that all items in the feed are new,
* coming from a PuSH hub.
*
* @param string $xml source of Atom or RSS feed
*/
public function postUpdates($xml)
{
common_log(LOG_INFO, __METHOD__ . ": packet for \"$this->feeduri\"! $xml");
require_once "XML/Feed/Parser.php";
$feed = new XML_Feed_Parser($xml, false, false, true);
$munger = new FeedMunger($feed);
$hits = 0;
foreach ($feed as $index => $entry) {
// @fixme this might sort in wrong order if we get multiple updates
$notice = $munger->notice($index);
$notice->profile_id = $this->profile_id;
// Double-check for oldies
// @fixme this could explode horribly for multiple feeds on a blog. sigh
$dupe = new Notice();
$dupe->uri = $notice->uri;
$dupe->find();
if ($dupe->fetch()) {
common_log(LOG_WARNING, __METHOD__ . ": tried to save dupe notice for entry {$notice->uri} of feed {$this->feeduri}");
continue;
}
if (Event::handle('StartNoticeSave', array(&$notice))) {
$id = $notice->insert();
Event::handle('EndNoticeSave', array($notice));
}
$notice->addToInboxes();
common_log(LOG_INFO, __METHOD__ . ": saved notice {$notice->id} for entry $index of update to \"{$this->feeduri}\"");
$hits++;
}
if ($hits == 0) {
common_log(LOG_INFO, __METHOD__ . ": no updates in packet for \"$this->feeduri\"! $xml");
}
}
}

View File

@ -1,14 +0,0 @@
CREATE TABLE `feedinfo` (
`id` int(11) NOT NULL auto_increment,
`profile_id` int(11) NOT NULL,
`feeduri` varchar(255) NOT NULL,
`homeuri` varchar(255) NOT NULL,
`huburi` varchar(255) NOT NULL,
`verify_token` varchar(32) default NULL,
`sub_start` datetime default NULL,
`sub_end` datetime default NULL,
`created` datetime NOT NULL,
`lastupdate` datetime NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `feedinfo_feeduri_idx` (`feeduri`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

View File

@ -102,7 +102,7 @@ class MemcachePlugin extends Plugin
* *
* @param string &$key in; Key to use for lookups * @param string &$key in; Key to use for lookups
* @param mixed &$value in; Value to associate * @param mixed &$value in; Value to associate
* @param integer &$flag in; Flag (passed through to Memcache) * @param integer &$flag in; Flag empty or Cache::COMPRESSED
* @param integer &$expiry in; Expiry (passed through to Memcache) * @param integer &$expiry in; Expiry (passed through to Memcache)
* @param boolean &$success out; Whether the set was successful * @param boolean &$success out; Whether the set was successful
* *
@ -115,7 +115,7 @@ class MemcachePlugin extends Plugin
if ($expiry === null) { if ($expiry === null) {
$expiry = $this->defaultExpiry; $expiry = $this->defaultExpiry;
} }
$success = $this->_conn->set($key, $value, $flag, $expiry); $success = $this->_conn->set($key, $value, $this->flag(intval($flag)), $expiry);
Event::handle('EndCacheSet', array($key, $value, $flag, Event::handle('EndCacheSet', array($key, $value, $flag,
$expiry)); $expiry));
return false; return false;
@ -197,6 +197,20 @@ class MemcachePlugin extends Plugin
} }
} }
/**
* Translate general flags to Memcached-specific flags
* @param int $flag
* @return int
*/
protected function flag($flag)
{
$out = 0;
if ($flag & Cache::COMPRESSED == Cache::COMPRESSED) {
$out |= MEMCACHE_COMPRESSED;
}
return $out;
}
function onPluginVersion(&$versions) function onPluginVersion(&$versions)
{ {
$versions[] = array('name' => 'Memcache', $versions[] = array('name' => 'Memcache',

View File

@ -0,0 +1,276 @@
<?php
/*
StatusNet Plugin: 0.9
Plugin Name: FeedSub
Plugin URI: http://status.net/wiki/Feed_subscription
Description: FeedSub allows subscribing to real-time updates from external feeds supporting PubHubSubbub protocol.
Version: 0.1
Author: Brion Vibber <brion@status.net>
Author URI: 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/>.
*/
/**
* @package FeedSubPlugin
* @maintainer Brion Vibber <brion@status.net>
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
define('FEEDSUB_SERVICE', 100); // fixme -- avoid hardcoding these?
// We bundle the XML_Parse_Feed library...
set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/extlib');
class FeedSubException extends Exception
{
}
class OStatusPlugin extends Plugin
{
/**
* Hook for RouterInitialized event.
*
* @param Net_URL_Mapper $m path-to-action mapper
* @return boolean hook return
*/
function onRouterInitialized($m)
{
// Discovery actions
$m->connect('.well-known/host-meta',
array('action' => 'hostmeta'));
$m->connect('main/webfinger',
array('action' => 'webfinger'));
$m->connect('main/ostatus',
array('action' => 'ostatusinit'));
$m->connect('main/ostatus?nickname=:nickname',
array('action' => 'ostatusinit'), array('nickname' => '[A-Za-z0-9_-]+'));
$m->connect('main/ostatussub',
array('action' => 'ostatussub'));
$m->connect('main/ostatussub',
array('action' => 'ostatussub'), array('feed' => '[A-Za-z0-9\.\/\:]+'));
// PuSH actions
$m->connect('main/push/hub', array('action' => 'pushhub'));
$m->connect('main/push/callback/:feed',
array('action' => 'pushcallback'),
array('feed' => '[0-9]+'));
$m->connect('settings/feedsub',
array('action' => 'feedsubsettings'));
// Salmon endpoint
$m->connect('main/salmon/user/:id',
array('action' => 'salmon'),
array('id' => '[0-9]+'));
$m->connect('main/salmon/group/:id',
array('action' => 'salmongroup'),
array('id' => '[0-9]+'));
return true;
}
/**
* Set up queue handlers for outgoing hub pushes
* @param QueueManager $qm
* @return boolean hook return
*/
function onEndInitializeQueueManager(QueueManager $qm)
{
$qm->connect('hubverify', 'HubVerifyQueueHandler');
$qm->connect('hubdistrib', 'HubDistribQueueHandler');
$qm->connect('hubout', 'HubOutQueueHandler');
return true;
}
/**
* Put saved notices into the queue for pubsub distribution.
*/
function onStartEnqueueNotice($notice, &$transports)
{
$transports[] = 'hubdistrib';
return true;
}
/**
* Set up a PuSH hub link to our internal link for canonical timeline
* Atom feeds for users and groups.
*/
function onStartApiAtom(Action $action)
{
if ($action instanceof ApiTimelineUserAction) {
$salmonAction = 'salmon';
} else if ($action instanceof ApiTimelineGroupAction) {
$salmonAction = 'salmongroup';
} else {
return;
}
$id = $action->arg('id');
if (strval(intval($id)) === strval($id)) {
// Canonical form of id in URL? These are used for OStatus syndication.
$hub = common_config('ostatus', 'hub');
if (empty($hub)) {
// Updates will be handled through our internal PuSH hub.
$hub = common_local_url('pushhub');
}
$action->element('link', array('rel' => 'hub',
'href' => $hub));
// Also, we'll add in the salmon link
$salmon = common_local_url($salmonAction, array('id' => $id));
$action->element('link', array('rel' => 'salmon',
'href' => $salmon));
}
}
/**
* Add the feed settings page to the Connect Settings menu
*
* @param Action &$action The calling page
*
* @return boolean hook return
*/
function onEndConnectSettingsNav(&$action)
{
$action_name = $action->trimmed('action');
$action->menuItem(common_local_url('feedsubsettings'),
_m('Feeds'),
_m('Feed subscription options'),
$action_name === 'feedsubsettings');
return true;
}
/**
* Automatically load the actions and libraries used by the plugin
*
* @param Class $cls the class
*
* @return boolean hook return
*
*/
function onAutoload($cls)
{
$base = dirname(__FILE__);
$lower = strtolower($cls);
$files = array("$base/classes/$cls.php",
"$base/lib/$lower.php");
if (substr($lower, -6) == 'action') {
$files[] = "$base/actions/" . substr($lower, 0, -6) . ".php";
}
foreach ($files as $file) {
if (file_exists($file)) {
include_once $file;
return false;
}
}
return true;
}
/**
* Add in an OStatus subscribe button
*/
function onStartProfilePageActionsElements($output, $profile)
{
$cur = common_current_user();
if (empty($cur)) {
// Add an OStatus subscribe
$output->elementStart('li', 'entity_subscribe');
$url = common_local_url('ostatusinit',
array('nickname' => $profile->nickname));
$output->element('a', array('href' => $url,
'class' => 'entity_remote_subscribe'),
_m('OStatus'));
$output->elementEnd('li');
}
}
/**
* Check if we've got remote replies to send via Salmon.
*
* @fixme push webfinger lookup & sending to a background queue
* @fixme also detect short-form name for remote subscribees where not ambiguous
*/
function onEndNoticeSave($notice)
{
$count = preg_match_all('/(\w+\.)*\w+@(\w+\.)*\w+(\w+\-\w+)*\.\w+/', $notice->content, $matches);
if ($count) {
foreach ($matches[0] as $webfinger) {
// Check to see if we've got an actual webfinger
$w = new Webfinger;
$endpoint_uri = '';
$result = $w->lookup($webfinger);
if (empty($result)) {
continue;
}
foreach ($result->links as $link) {
if ($link['rel'] == 'salmon') {
$endpoint_uri = $link['href'];
}
}
if (empty($endpoint_uri)) {
continue;
}
$xml = '<?xml version="1.0" encoding="UTF-8" ?>';
$xml .= $notice->asAtomEntry();
$salmon = new Salmon();
$salmon->post($endpoint_uri, $xml);
}
}
}
/**
* Garbage collect unused feeds on unsubscribe
*/
function onEndUnsubscribe($user, $other)
{
$profile = Ostatus_profile::staticGet('profile_id', $other->id);
if ($feed) {
$sub = new Subscription();
$sub->subscribed = $other->id;
$sub->limit(1);
if (!$sub->find(true)) {
common_log(LOG_INFO, "Unsubscribing from now-unused feed $feed->feeduri on hub $feed->huburi");
$profile->unsubscribe();
}
}
return true;
}
/**
* Make sure necessary tables are filled out.
*/
function onCheckSchema() {
$schema = Schema::get();
$schema->ensureTable('ostatus_profile', Ostatus_profile::schemaDef());
$schema->ensureTable('hubsub', HubSub::schemaDef());
return true;
}
}

View File

@ -182,9 +182,9 @@ class FeedSubSettingsAction extends ConnectSettingsAction
} }
$this->munger = $discover->feedMunger(); $this->munger = $discover->feedMunger();
$this->feedinfo = $this->munger->feedInfo(); $this->profile = $this->munger->ostatusProfile();
if ($this->feedinfo->huburi == '') { if ($this->profile->huburi == '' && !common_config('feedsub', 'nohub')) {
$this->showForm(_m('Feed is not PuSH-enabled; cannot subscribe.')); $this->showForm(_m('Feed is not PuSH-enabled; cannot subscribe.'));
return false; return false;
} }
@ -196,30 +196,44 @@ class FeedSubSettingsAction extends ConnectSettingsAction
{ {
if ($this->validateFeed()) { if ($this->validateFeed()) {
$this->preview = true; $this->preview = true;
$this->feedinfo = Feedinfo::ensureProfile($this->munger); $this->profile = Ostatus_profile::ensureProfile($this->munger);
if (!$this->profile) {
throw new ServerException("Feed profile was not saved properly.");
}
// If not already in use, subscribe to updates via the hub // If not already in use, subscribe to updates via the hub
if ($this->feedinfo->sub_start) { if ($this->profile->sub_start) {
common_log(LOG_INFO, __METHOD__ . ": double the fun! new sub for {$this->feedinfo->feeduri} last subbed {$this->feedinfo->sub_start}"); common_log(LOG_INFO, __METHOD__ . ": double the fun! new sub for {$this->profile->feeduri} last subbed {$this->profile->sub_start}");
} else { } else {
$ok = $this->feedinfo->subscribe(); $ok = $this->profile->subscribe();
common_log(LOG_INFO, __METHOD__ . ": sub was $ok"); common_log(LOG_INFO, __METHOD__ . ": sub was $ok");
if (!$ok) { if (!$ok) {
$this->showForm(_m('Feed subscription failed! Bad response from hub.')); $this->showForm(_m('Feed subscription failed! Bad response from hub.'));
return; return;
} }
} }
// And subscribe the current user to the local profile // And subscribe the current user to the local profile
$user = common_current_user(); $user = common_current_user();
$profile = $this->feedinfo->getProfile();
if ($this->profile->isGroup()) {
if ($user->isSubscribed($profile)) { $group = $this->profile->localGroup();
$this->showForm(_m('Already subscribed!')); if ($user->isMember($group)) {
} elseif ($user->subscribeTo($profile)) { $this->showForm(_m('Already a member!'));
$this->showForm(_m('Feed subscribed!')); } elseif (Group_member::join($this->profile->group_id, $user->id)) {
$this->showForm(_m('Joined remote group!'));
} else {
$this->showForm(_m('Remote group join failed!'));
}
} else { } else {
$this->showForm(_m('Feed subscription failed!')); $local = $this->profile->localProfile();
if ($user->isSubscribed($local)) {
$this->showForm(_m('Already subscribed!'));
} elseif ($user->subscribeTo($local)) {
$this->showForm(_m('Feed subscribed!'));
} else {
$this->showForm(_m('Feed subscription failed!'));
}
} }
} }
} }
@ -234,7 +248,7 @@ class FeedSubSettingsAction extends ConnectSettingsAction
function previewFeed() function previewFeed()
{ {
$feedinfo = $this->munger->feedinfo(); $profile = $this->munger->ostatusProfile();
$notice = $this->munger->notice(0, true); // preview $notice = $this->munger->notice(0, true); // preview
if ($notice) { if ($notice) {

View File

@ -0,0 +1,42 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2010, 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/>.
*/
/**
* @package OStatusPlugin
* @maintainer James Walker <james@status.net>
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
class HostMetaAction extends Action
{
function handle()
{
parent::handle();
$w = new Webfinger();
$domain = common_config('site', 'server');
$url = common_local_url('webfinger');
$url.= '?uri={uri}';
print $w->getHostMeta($domain, $url);
}
}

View File

@ -0,0 +1,128 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2010, 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/>.
*/
/**
* @package OStatusPlugin
* @maintainer James Walker <james@status.net>
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
class OStatusInitAction extends Action
{
var $nickname;
var $acct;
var $err;
function prepare($args)
{
parent::prepare($args);
if (common_logged_in()) {
$this->clientError(_('You can use the local subscription!'));
return false;
}
$this->nickname = $this->trimmed('nickname');
$this->acct = $this->trimmed('acct');
return true;
}
function handle($args)
{
parent::handle($args);
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
/* Use a session token for CSRF protection. */
$token = $this->trimmed('token');
if (!$token || $token != common_session_token()) {
$this->showForm(_('There was a problem with your session token. '.
'Try again, please.'));
return;
}
$this->ostatusConnect();
} else {
$this->showForm();
}
}
function showForm($err = null)
{
$this->err = $err;
$this->showPage();
}
function showContent()
{
$this->elementStart('form', array('id' => 'form_ostatus_connect',
'method' => 'post',
'class' => 'form_settings',
'action' => common_local_url('ostatusinit')));
$this->elementStart('fieldset');
$this->element('legend', _('Subscribe to a remote user'));
$this->hidden('token', common_session_token());
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
$this->input('nickname', _('User nickname'), $this->nickname,
_('Nickname of the user you want to follow'));
$this->elementEnd('li');
$this->elementStart('li');
$this->input('acct', _('Profile Account'), $this->acct,
_('Your account id (i.e. user@identi.ca)'));
$this->elementEnd('li');
$this->elementEnd('ul');
$this->submit('submit', _('Subscribe'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
function ostatusConnect()
{
$w = new Webfinger;
$result = $w->lookup($this->acct);
foreach ($result->links as $link) {
if ($link['rel'] == 'http://ostatus.org/schema/1.0/subscribe') {
// We found a URL - let's redirect!
$user = User::staticGet('nickname', $this->nickname);
$feed_url = common_local_url('ApiTimelineUser',
array('id' => $user->id,
'format' => 'atom'));
$url = $w->applyTemplate($link['template'], $feed_url);
common_redirect($url, 303);
}
}
}
function title()
{
return _('OStatus Connect');
}
}

View File

@ -0,0 +1,226 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2010, 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/>.
*/
/**
* @package OStatusPlugin
* @maintainer James Walker <james@status.net>
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
class OStatusSubAction extends Action
{
protected $feedurl;
function title()
{
return _m("OStatus Subscribe");
}
function handle($args)
{
if ($this->validateFeed()) {
$this->showForm();
}
return true;
}
function showForm($err = null)
{
$this->err = $err;
$this->showPage();
}
function showContent()
{
$user = common_current_user();
$profile = $user->getProfile();
$fuser = null;
$flink = Foreign_link::getByUserID($user->id, FEEDSUB_SERVICE);
if (!empty($flink)) {
$fuser = $flink->getForeignUser();
}
$this->elementStart('form', array('method' => 'post',
'id' => 'form_settings_feedsub',
'class' => 'form_settings',
'action' =>
common_local_url('feedsubsettings')));
$this->hidden('token', common_session_token());
$this->elementStart('fieldset', array('id' => 'settings_feeds'));
$this->elementStart('ul', 'form_data');
$this->elementStart('li', array('id' => 'settings_twitter_login_button'));
$this->input('feedurl', _('Feed URL'), $this->feedurl, _('Enter the URL of a PubSubHubbub-enabled feed'));
$this->elementEnd('li');
$this->elementEnd('ul');
$this->submit('subscribe', _m('Subscribe'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
$this->previewFeed();
}
/**
* Handle posts to this form
*
* Based on the button that was pressed, muxes out to other functions
* to do the actual task requested.
*
* All sub-functions reload the form with a message -- success or failure.
*
* @return void
*/
function handlePost()
{
// CSRF protection
$token = $this->trimmed('token');
if (!$token || $token != common_session_token()) {
$this->showForm(_('There was a problem with your session token. '.
'Try again, please.'));
return;
}
if ($this->arg('subscribe')) {
$this->saveFeed();
} else {
$this->showForm(_('Unexpected form submission.'));
}
}
/**
* Set up and add a feed
*
* @return boolean true if feed successfully read
* Sends you back to input form if not.
*/
function validateFeed()
{
$feedurl = $this->trimmed('feed');
if ($feedurl == '') {
$this->showForm(_m('Empty feed URL!'));
return;
}
$this->feedurl = $feedurl;
// Get the canonical feed URI and check it
try {
$discover = new FeedDiscovery();
$uri = $discover->discoverFromURL($feedurl);
} catch (FeedSubBadURLException $e) {
$this->showForm(_m('Invalid URL or could not reach server.'));
return false;
} catch (FeedSubBadResponseException $e) {
$this->showForm(_m('Cannot read feed; server returned error.'));
return false;
} catch (FeedSubEmptyException $e) {
$this->showForm(_m('Cannot read feed; server returned an empty page.'));
return false;
} catch (FeedSubBadHTMLException $e) {
$this->showForm(_m('Bad HTML, could not find feed link.'));
return false;
} catch (FeedSubNoFeedException $e) {
$this->showForm(_m('Could not find a feed linked from this URL.'));
return false;
} catch (FeedSubUnrecognizedTypeException $e) {
$this->showForm(_m('Not a recognized feed type.'));
return false;
} catch (FeedSubException $e) {
// Any new ones we forgot about
$this->showForm(_m('Bad feed URL.'));
return false;
}
$this->munger = $discover->feedMunger();
$this->profile = $this->munger->ostatusProfile();
if ($this->profile->huburi == '') {
$this->showForm(_m('Feed is not PuSH-enabled; cannot subscribe.'));
return false;
}
return true;
}
function saveFeed()
{
if ($this->validateFeed()) {
$this->preview = true;
$this->profile = Ostatus_profile::ensureProfile($this->munger);
// If not already in use, subscribe to updates via the hub
if ($this->profile->sub_start) {
common_log(LOG_INFO, __METHOD__ . ": double the fun! new sub for {$this->profile->feeduri} last subbed {$this->profile->sub_start}");
} else {
$ok = $this->profile->subscribe();
common_log(LOG_INFO, __METHOD__ . ": sub was $ok");
if (!$ok) {
$this->showForm(_m('Feed subscription failed! Bad response from hub.'));
return;
}
}
// And subscribe the current user to the local profile
$user = common_current_user();
$profile = $this->profile->getProfile();
if ($user->isSubscribed($profile)) {
$this->showForm(_m('Already subscribed!'));
} elseif ($user->subscribeTo($profile)) {
$this->showForm(_m('Feed subscribed!'));
} else {
$this->showForm(_m('Feed subscription failed!'));
}
}
}
function previewFeed()
{
$profile = $this->munger->ostatusProfile();
$notice = $this->munger->notice(0, true); // preview
if ($notice) {
$this->element('b', null, 'Preview of latest post from this feed:');
$item = new NoticeList($notice, $this);
$item->show();
} else {
$this->element('b', null, 'No posts in this feed yet.');
}
}
}

View File

@ -25,7 +25,7 @@
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
class FeedSubCallbackAction extends Action class PushCallbackAction extends Action
{ {
function handle() function handle()
{ {
@ -48,13 +48,18 @@ class FeedSubCallbackAction extends Action
throw new ServerException('Empty or invalid feed id', 400); throw new ServerException('Empty or invalid feed id', 400);
} }
$feedinfo = Feedinfo::staticGet('id', $feedid); $profile = Ostatus_profile::staticGet('id', $feedid);
if (!$feedinfo) { if (!$profile) {
throw new ServerException('Unknown feed id ' . $feedid, 400); throw new ServerException('Unknown OStatus/PuSH feed id ' . $feedid, 400);
} }
$hmac = '';
if (isset($_SERVER['HTTP_X_HUB_SIGNATURE'])) {
$hmac = $_SERVER['HTTP_X_HUB_SIGNATURE'];
}
$post = file_get_contents('php://input'); $post = file_get_contents('php://input');
$feedinfo->postUpdates($post); $profile->postUpdates($post, $hmac);
} }
/** /**
@ -73,28 +78,30 @@ class FeedSubCallbackAction extends Action
throw new ServerException("Bogus hub callback: bad mode", 404); throw new ServerException("Bogus hub callback: bad mode", 404);
} }
$feedinfo = Feedinfo::staticGet('feeduri', $topic); $profile = Ostatus_profile::staticGet('feeduri', $topic);
if (!$feedinfo) { if (!$profile) {
common_log(LOG_WARNING, __METHOD__ . ": bogus hub callback for unknown feed $topic"); common_log(LOG_WARNING, __METHOD__ . ": bogus hub callback for unknown feed $topic");
throw new ServerException("Bogus hub callback: unknown feed", 404); throw new ServerException("Bogus hub callback: unknown feed", 404);
} }
# Can't currently set the token in our sub api if ($profile->verify_token !== $verify_token) {
#if ($feedinfo->verify_token !== $verify_token) { common_log(LOG_WARNING, __METHOD__ . ": bogus hub callback with bad token \"$verify_token\" for feed $topic");
# common_log(LOG_WARNING, __METHOD__ . ": bogus hub callback with bad token \"$verify_token\" for feed $topic"); throw new ServerError("Bogus hub callback: bad token", 404);
# throw new ServerError("Bogus hub callback: bad token", 404); }
#}
if ($mode != $profile->sub_state) {
// OK! common_log(LOG_WARNING, __METHOD__ . ": bogus hub callback with bad mode \"$mode\" for feed $topic in state \"{$profile->sub_state}\"");
common_log(LOG_INFO, __METHOD__ . ': sub confirmed'); throw new ServerException("Bogus hub callback: mode doesn't match subscription state.", 404);
$feedinfo->sub_start = common_sql_date(time()); }
if ($lease_seconds > 0) {
$feedinfo->sub_end = common_sql_date(time() + $lease_seconds); // OK!
} else { if ($mode == 'subscribe') {
$feedinfo->sub_end = null; common_log(LOG_INFO, __METHOD__ . ': sub confirmed');
$profile->confirmSubscribe($lease_seconds);
} else {
common_log(LOG_INFO, __METHOD__ . ": unsub confirmed; deleting sub record for $topic");
$profile->confirmUnsubscribe();
} }
$feedinfo->update();
print $challenge; print $challenge;
} }
} }

View File

@ -0,0 +1,176 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2010, 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/>.
*/
/**
* Integrated PuSH hub; lets us only ping them what need it.
* @package Hub
* @maintainer Brion Vibber <brion@status.net>
*/
/**
Things to consider...
* should we purge incomplete subscriptions that never get a verification pingback?
* when can we send subscription renewal checks?
- at next send time probably ok
* when can we handle trimming of subscriptions?
- at next send time probably ok
* should we keep a fail count?
*/
class PushHubAction extends Action
{
function arg($arg, $def=null)
{
// PHP converts '.'s in incoming var names to '_'s.
// It also merges multiple values, which'll break hub.verify and hub.topic for publishing
// @fixme handle multiple args
$arg = str_replace('.', '_', $arg);
return parent::arg($arg, $def);
}
function prepare($args)
{
StatusNet::setApi(true); // reduce exception reports to aid in debugging
return parent::prepare($args);
}
function handle()
{
$mode = $this->trimmed('hub.mode');
switch ($mode) {
case "subscribe":
$this->subscribe();
break;
case "unsubscribe":
$this->unsubscribe();
break;
case "publish":
throw new ServerException("Publishing outside feeds not supported.", 400);
default:
throw new ServerException("Unrecognized mode '$mode'.", 400);
}
}
/**
* Process a PuSH feed subscription request.
*
* HTTP return codes:
* 202 Accepted - request saved and awaiting verification
* 204 No Content - already subscribed
* 403 Forbidden - rejecting this (not specifically spec'd)
*/
function subscribe()
{
$feed = $this->argUrl('hub.topic');
$callback = $this->argUrl('hub.callback');
common_log(LOG_DEBUG, __METHOD__ . ": checking sub'd to $feed $callback");
if ($this->getSub($feed, $callback)) {
// Already subscribed; return 204 per spec.
header('HTTP/1.1 204 No Content');
common_log(LOG_DEBUG, __METHOD__ . ': already subscribed');
return;
}
common_log(LOG_DEBUG, __METHOD__ . ': setting up');
$sub = new HubSub();
$sub->topic = $feed;
$sub->callback = $callback;
$sub->secret = $this->arg('hub.secret', null);
$sub->setLease(intval($this->arg('hub.lease_seconds')));
// @fixme check for feeds we don't manage
// @fixme check the verification mode, might want a return immediately?
common_log(LOG_DEBUG, __METHOD__ . ': inserting');
$ok = $sub->insert();
if (!$ok) {
throw new ServerException("Failed to save subscription record", 500);
}
// @fixme check errors ;)
$data = array('sub' => $sub, 'mode' => 'subscribe');
$qm = QueueManager::get();
$qm->enqueue($data, 'hubverify');
header('HTTP/1.1 202 Accepted');
common_log(LOG_DEBUG, __METHOD__ . ': done');
}
/**
* Process a PuSH feed unsubscription request.
*
* HTTP return codes:
* 202 Accepted - request saved and awaiting verification
* 204 No Content - already subscribed
* 400 Bad Request - invalid params or rejected feed
*/
function unsubscribe()
{
$feed = $this->argUrl('hub.topic');
$callback = $this->argUrl('hub.callback');
$sub = $this->getSub($feed, $callback);
if ($sub) {
if ($sub->verify('unsubscribe')) {
$sub->delete();
common_log(LOG_INFO, "PuSH unsubscribed $feed for $callback");
} else {
throw new ServerException("Failed PuSH unsubscription: verification failed! $feed for $callback");
}
} else {
throw new ServerException("Failed PuSH unsubscription: not subscribed! $feed for $callback");
}
}
/**
* Grab and validate a URL from POST parameters.
* @throws ServerException for malformed or non-http/https URLs
*/
protected function argUrl($arg)
{
$url = $this->arg($arg);
$params = array('domain_check' => false, // otherwise breaks my local tests :P
'allowed_schemes' => array('http', 'https'));
if (Validate::uri($url, $params)) {
return $url;
} else {
throw new ServerException("Invalid URL passed for $arg: '$url'", 400);
}
}
/**
* Get HubSub subscription record for a given feed & subscriber.
*
* @param string $feed
* @param string $callback
* @return mixed HubSub or false
*/
protected function getSub($feed, $callback)
{
return HubSub::staticGet($feed, $callback);
}
}

View File

@ -0,0 +1,81 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2010, 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/>.
*/
/**
* @package OStatusPlugin
* @author James Walker <james@status.net>
*/
if (!defined('STATUSNET')) {
exit(1);
}
class SalmonAction extends Action
{
var $user = null;
var $xml = null;
var $activity = null;
function prepare($args)
{
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
$this->clientError(_('This method requires a POST.'));
}
if ($_SERVER['CONTENT_TYPE'] != 'application/atom+xml') {
$this->clientError(_('Salmon requires application/atom+xml'));
}
$id = $this->trimmed('id');
if (!$id) {
$this->clientError(_('No ID.'));
}
$this->user = User::staticGet($id);
if (empty($this->user)) {
$this->clientError(_('No such user.'));
}
$xml = file_get_contents('php://input');
$dom = DOMDocument::loadXML($xml);
// XXX: check that document element is Atom entry
// XXX: check the signature
$this->act = Activity::fromAtomEntry($dom->documentElement);
}
function handle($args)
{
common_log(LOG_DEBUG, 'Salmon: incoming post for user: '. $user_id);
// TODO : Insert new $xml -> notice code
switch ($this->act->verb)
{
case Activity::POST:
case Activity::SHARE:
case Activity::FAVORITE:
case Activity::FOLLOW:
}
}
}

View File

@ -0,0 +1,77 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2010, 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/>.
*/
/**
* @package OStatusPlugin
* @maintainer James Walker <james@status.net>
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
class WebfingerAction extends Action
{
public $uri;
function prepare($args)
{
parent::prepare($args);
$this->uri = $this->trimmed('uri');
return true;
}
function handle()
{
$acct = Webfinger::normalize($this->uri);
$xrd = new XRD();
list($nick, $domain) = explode('@', urldecode($acct));
$nick = common_canonical_nickname($nick);
$this->user = User::staticGet('nickname', $nick);
if (!$this->user) {
$this->clientError(_('No such user.'), 404);
return false;
}
$xrd->subject = $this->uri;
$xrd->alias[] = common_profile_url($nick);
$xrd->links[] = array('rel' => 'http://webfinger.net/rel/profile-page',
'type' => 'text/html',
'href' => common_profile_url($nick));
$salmon_url = common_local_url('salmon',
array('id' => $this->user->id));
$xrd->links[] = array('rel' => 'salmon',
'href' => $salmon_url);
// TODO - finalize where the redirect should go on the publisher
$url = common_local_url('ostatussub') . '?feed={uri}';
$xrd->links[] = array('rel' => 'http://ostatus.org/schema/1.0/subscribe',
'template' => $url );
header('Content-type: text/xml');
print $xrd->toXML();
}
}

View File

@ -0,0 +1,272 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2010, 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/>.
*/
/**
* PuSH feed subscription record
* @package Hub
* @author Brion Vibber <brion@status.net>
*/
class HubSub extends Memcached_DataObject
{
public $__table = 'hubsub';
public $hashkey; // sha1(topic . '|' . $callback); (topic, callback) key is too long for myisam in utf8
public $topic;
public $callback;
public $secret;
public $verify_token;
public $challenge;
public $lease;
public $sub_start;
public $sub_end;
public $created;
public /*static*/ function staticGet($topic, $callback)
{
return parent::staticGet(__CLASS__, 'hashkey', self::hashkey($topic, $callback));
}
protected static function hashkey($topic, $callback)
{
return sha1($topic . '|' . $callback);
}
/**
* 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('hashkey' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
'topic' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
'callback' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
'secret' => DB_DATAOBJECT_STR,
'verify_token' => DB_DATAOBJECT_STR,
'challenge' => DB_DATAOBJECT_STR,
'lease' => DB_DATAOBJECT_INT,
'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);
}
static function schemaDef()
{
return array(new ColumnDef('hashkey', 'char',
/*size*/40,
/*nullable*/false,
/*key*/'PRI'),
new ColumnDef('topic', 'varchar',
/*size*/255,
/*nullable*/false,
/*key*/'KEY'),
new ColumnDef('callback', 'varchar',
255, false),
new ColumnDef('secret', 'text',
null, true),
new ColumnDef('verify_token', 'text',
null, true),
new ColumnDef('challenge', 'varchar',
32, true),
new ColumnDef('lease', 'int',
null, true),
new ColumnDef('sub_start', 'datetime',
null, true),
new ColumnDef('sub_end', 'datetime',
null, true),
new ColumnDef('created', 'datetime',
null, false));
}
function keys()
{
return array_keys($this->keyTypes());
}
function sequenceKeys()
{
return array(false, false, 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 keyTypes()
{
return array('hashkey' => 'K');
}
/**
* Validates a requested lease length, sets length plus
* subscription start & end dates.
*
* Does not save to database -- use before insert() or update().
*
* @param int $length in seconds
*/
function setLease($length)
{
assert(is_int($length));
$min = 86400;
$max = 86400 * 30;
if ($length == 0) {
// We want to garbage collect dead subscriptions!
$length = $max;
} elseif( $length < $min) {
$length = $min;
} else if ($length > $max) {
$length = $max;
}
$this->lease = $length;
$this->start_sub = common_sql_now();
$this->end_sub = common_sql_date(time() + $length);
}
/**
* Send a verification ping to subscriber
* @param string $mode 'subscribe' or 'unsubscribe'
*/
function verify($mode)
{
assert($mode == 'subscribe' || $mode == 'unsubscribe');
// Is this needed? data object fun...
$clone = clone($this);
$clone->challenge = common_good_rand(16);
$clone->update($this);
$this->challenge = $clone->challenge;
unset($clone);
$params = array('hub.mode' => $mode,
'hub.topic' => $this->topic,
'hub.challenge' => $this->challenge);
if ($mode == 'subscribe') {
$params['hub.lease_seconds'] = $this->lease;
}
if ($this->verify_token) {
$params['hub.verify_token'] = $this->verify_token;
}
$url = $this->callback . '?' . http_build_query($params, '', '&'); // @fixme ugly urls
try {
$request = new HTTPClient();
$response = $request->get($url);
$status = $response->getStatus();
if ($status >= 200 && $status < 300) {
$fail = false;
} else {
// @fixme how can we schedule a second attempt?
// Or should we?
$fail = "Returned HTTP $status";
}
} catch (Exception $e) {
$fail = $e->getMessage();
}
if ($fail) {
// @fixme how can we schedule a second attempt?
// or save a fail count?
// Or should we?
common_log(LOG_ERR, "Failed to verify $mode for $this->topic at $this->callback: $fail");
return false;
} else {
if ($mode == 'subscribe') {
// Establish or renew the subscription!
// This seems unnecessary... dataobject fun!
$clone = clone($this);
$clone->challenge = null;
$clone->setLease($this->lease);
$clone->update($this);
unset($clone);
$this->challenge = null;
$this->setLease($this->lease);
common_log(LOG_ERR, "Verified $mode of $this->callback:$this->topic for $this->lease seconds");
} else if ($mode == 'unsubscribe') {
common_log(LOG_ERR, "Verified $mode of $this->callback:$this->topic");
$this->delete();
}
return true;
}
}
/**
* Insert wrapper; transparently set the hash key from topic and callback columns.
* @return boolean success
*/
function insert()
{
$this->hashkey = self::hashkey($this->topic, $this->callback);
return parent::insert();
}
/**
* Send a 'fat ping' to the subscriber's callback endpoint
* containing the given Atom feed chunk.
*
* Determination of which items to send should be done at
* a higher level; don't just shove in a complete feed!
*
* @param string $atom well-formed Atom feed
*/
function push($atom)
{
$headers = array('Content-Type: application/atom+xml');
if ($this->secret) {
$hmac = hash_hmac('sha1', $atom, $this->secret);
$headers[] = "X-Hub-Signature: sha1=$hmac";
} else {
$hmac = '(none)';
}
common_log(LOG_INFO, "About to push feed to $this->callback for $this->topic, HMAC $hmac");
try {
$request = new HTTPClient();
$request->setBody($atom);
$response = $request->post($this->callback, $headers);
if ($response->isOk()) {
return true;
}
common_log(LOG_ERR, "Error sending PuSH content " .
"to $this->callback for $this->topic: " .
$response->getStatus());
return false;
} catch (Exception $e) {
common_log(LOG_ERR, "Error sending PuSH content " .
"to $this->callback for $this->topic: " .
$e->getMessage());
return false;
}
}
}

View File

@ -0,0 +1,644 @@
<?php
/*
* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2009-2010, 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/>.
*/
/**
* @package FeedSubPlugin
* @maintainer Brion Vibber <brion@status.net>
*/
/*
PuSH subscription flow:
$profile->subscribe()
generate random verification token
save to verify_token
sends a sub request to the hub...
main/push/callback
hub sends confirmation back to us via GET
We verify the request, then echo back the challenge.
On our end, we save the time we subscribed and the lease expiration
main/push/callback
hub sends us updates via POST
*/
class FeedDBException extends FeedSubException
{
public $obj;
function __construct($obj)
{
parent::__construct('Database insert failure');
$this->obj = $obj;
}
}
class Ostatus_profile extends Memcached_DataObject
{
public $__table = 'ostatus_profile';
public $id;
public $profile_id;
public $group_id;
public $feeduri;
public $homeuri;
// PuSH subscription data
public $huburi;
public $secret;
public $verify_token;
public $sub_state; // subscribe, active, unsubscribe
public $sub_start;
public $sub_end;
public $salmonuri;
public $created;
public $lastupdate;
public /*static*/ function staticGet($k, $v=null)
{
return parent::staticGet(__CLASS__, $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('id' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL,
'profile_id' => DB_DATAOBJECT_INT,
'group_id' => DB_DATAOBJECT_INT,
'feeduri' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
'homeuri' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
'huburi' => DB_DATAOBJECT_STR,
'secret' => DB_DATAOBJECT_STR,
'verify_token' => DB_DATAOBJECT_STR,
'sub_state' => 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,
'salmonuri' => DB_DATAOBJECT_STR,
'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, true, 'UNI'),
new ColumnDef('group_id', 'integer',
null, true, 'UNI'),
new ColumnDef('feeduri', 'varchar',
255, false, 'UNI'),
new ColumnDef('homeuri', 'varchar',
255, false),
new ColumnDef('huburi', 'text',
null, true),
new ColumnDef('verify_token', 'varchar',
32, true),
new ColumnDef('secret', 'varchar',
64, true),
new ColumnDef('sub_state', "enum('subscribe','active','unsubscribe')",
null, true),
new ColumnDef('sub_start', 'datetime',
null, true),
new ColumnDef('sub_end', 'datetime',
null, true),
new ColumnDef('salmonuri', 'text',
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()
{
return array_keys($this->keyTypes());
}
/**
* 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 array('id' => 'K', 'profile_id' => 'U', 'group_id' => 'U', 'feeduri' => 'U');
}
function sequenceKey()
{
return array('id', true, false);
}
/**
* Fetch the StatusNet-side profile for this feed
* @return Profile
*/
public function localProfile()
{
if ($this->profile_id) {
return Profile::staticGet('id', $this->profile_id);
}
return null;
}
/**
* Fetch the StatusNet-side profile for this feed
* @return Profile
*/
public function localGroup()
{
if ($this->group_id) {
return User_group::staticGet('id', $this->group_id);
}
return null;
}
/**
* @param FeedMunger $munger
* @param boolean $isGroup is this a group record?
* @return Ostatus_profile
*/
public static function ensureProfile($munger)
{
$profile = $munger->ostatusProfile();
$current = self::staticGet('feeduri', $profile->feeduri);
if ($current) {
// @fixme we should probably update info as necessary
return $current;
}
$profile->query('BEGIN');
// Awful hack! Awful hack!
$profile->verify = common_good_rand(16);
$profile->secret = common_good_rand(32);
try {
$local = $munger->profile();
if ($entity->isGroup()) {
$group = new User_group();
$group->nickname = $local->nickname . '@remote'; // @fixme
$group->fullname = $local->fullname;
$group->homepage = $local->homepage;
$group->location = $local->location;
$group->created = $local->created;
$group->insert();
if (empty($result)) {
throw new FeedDBException($group);
}
$profile->group_id = $group->id;
} else {
$result = $local->insert();
if (empty($result)) {
throw new FeedDBException($local);
}
$profile->profile_id = $local->id;
}
$profile->created = sql_common_date();
$profile->lastupdate = sql_common_date();
$result = $profile->insert();
if (empty($result)) {
throw new FeedDBException($profile);
}
$entity->query('COMMIT');
} catch (FeedDBException $e) {
common_log_db_error($e->obj, 'INSERT', __FILE__);
$entity->query('ROLLBACK');
return false;
}
$avatar = $munger->getAvatar();
if ($avatar) {
try {
$this->updateAvatar($avatar);
} catch (Exception $e) {
common_log(LOG_ERR, "Exception setting OStatus avatar: " .
$e->getMessage());
}
}
return $entity;
}
/**
* Download and update given avatar image
* @param string $url
* @throws Exception in various failure cases
*/
public function updateAvatar($url)
{
// @fixme this should be better encapsulated
// ripped from oauthstore.php (for old OMB client)
$temp_filename = tempnam(sys_get_temp_dir(), 'listener_avatar');
copy($url, $temp_filename);
$imagefile = new ImageFile($profile->id, $temp_filename);
$filename = Avatar::filename($profile->id,
image_type_to_extension($imagefile->type),
null,
common_timestamp());
rename($temp_filename, Avatar::path($filename));
if ($this->isGroup()) {
$group = $this->localGroup();
$group->setOriginal($filename);
} else {
$profile = $this->localProfile();
$profile->setOriginal($filename);
}
}
/**
* Returns an XML string fragment with profile information as an
* Activity Streams noun object with the given element type.
*
* Assumes that 'activity' namespace has been previously defined.
*
* @param string $element one of 'actor', 'subject', 'object', 'target'
* @return string
*/
function asActivityNoun($element)
{
$xs = new XMLStringer(true);
$avatarHref = Avatar::defaultImage(AVATAR_PROFILE_SIZE);
$avatarType = 'image/png';
if ($this->isGroup()) {
$type = 'http://activitystrea.ms/schema/1.0/group';
$self = $this->localGroup();
// @fixme put a standard getAvatar() interface on groups too
if ($self->homepage_logo) {
$avatarHref = $self->homepage_logo;
$map = array('png' => 'image/png',
'jpg' => 'image/jpeg',
'jpeg' => 'image/jpeg',
'gif' => 'image/gif');
$extension = pathinfo(parse_url($avatarHref, PHP_URL_PATH), PATHINFO_EXTENSION);
if (isset($map[$extension])) {
$avatarType = $map[$extension];
}
}
} else {
$type = 'http://activitystrea.ms/schema/1.0/person';
$self = $this->localProfile();
$avatar = $self->getAvatar(AVATAR_PROFILE_SIZE);
if ($avatar) {
$avatarHref = $avatar->
$avatarType = $avatar->mediatype;
}
}
$xs->elementStart('activity:' . $element);
$xs->element(
'activity:object-type',
null,
$type
);
$xs->element(
'id',
null,
$this->homeuri); // ?
$xs->element('title', null, $self->getBestName());
$xs->element(
'link', array(
'type' => $avatarType,
'href' => $avatarHref
),
''
);
$xs->elementEnd('activity:' . $element);
return $xs->getString();
}
/**
* Damn dirty hack!
*/
function isGroup()
{
return (strpos($this->feeduri, '/groups/') !== false);
}
/**
* Send a subscription request to the hub for this feed.
* The hub will later send us a confirmation POST to /main/push/callback.
*
* @return bool true on success, false on failure
*/
public function subscribe($mode='subscribe')
{
if (common_config('feedsub', 'nohub')) {
// Fake it! We're just testing remote feeds w/o hubs.
return true;
}
// @fixme use the verification token
#$token = md5(mt_rand() . ':' . $this->feeduri);
#$this->verify_token = $token;
#$this->update(); // @fixme
try {
$callback = common_local_url('pushcallback', array('feed' => $this->id));
$headers = array('Content-Type: application/x-www-form-urlencoded');
$post = array('hub.mode' => $mode,
'hub.callback' => $callback,
'hub.verify' => 'async',
'hub.verify_token' => $this->verify_token,
'hub.secret' => $this->secret,
//'hub.lease_seconds' => 0,
'hub.topic' => $this->feeduri);
$client = new HTTPClient();
$response = $client->post($this->huburi, $headers, $post);
$status = $response->getStatus();
if ($status == 202) {
common_log(LOG_INFO, __METHOD__ . ': sub req ok, awaiting verification callback');
return true;
} else if ($status == 204) {
common_log(LOG_INFO, __METHOD__ . ': sub req ok and verified');
return true;
} else if ($status >= 200 && $status < 300) {
common_log(LOG_ERR, __METHOD__ . ": sub req returned unexpected HTTP $status: " . $response->getBody());
return false;
} else {
common_log(LOG_ERR, __METHOD__ . ": sub req failed with HTTP $status: " . $response->getBody());
return false;
}
} catch (Exception $e) {
// wtf!
common_log(LOG_ERR, __METHOD__ . ": error \"{$e->getMessage()}\" hitting hub $this->huburi subscribing to $this->feeduri");
return false;
}
}
/**
* Save PuSH subscription confirmation.
* Sets approximate lease start and end times and finalizes state.
*
* @param int $lease_seconds provided hub.lease_seconds parameter, if given
*/
public function confirmSubscribe($lease_seconds=0)
{
$original = clone($this);
$this->sub_state = 'active';
$this->sub_start = common_sql_date(time());
if ($lease_seconds > 0) {
$this->sub_end = common_sql_date(time() + $lease_seconds);
} else {
$this->sub_end = null;
}
$this->lastupdate = common_sql_date();
return $this->update($original);
}
/**
* Save PuSH unsubscription confirmation.
* Wipes active PuSH sub info and resets state.
*/
public function confirmUnsubscribe()
{
$original = clone($this);
$this->verify_token = null;
$this->secret = null;
$this->sub_state = null;
$this->sub_start = null;
$this->sub_end = null;
$this->lastupdate = common_sql_date();
return $this->update($original);
}
/**
* Send a PuSH unsubscription request to the hub for this feed.
* The hub will later send us a confirmation POST to /main/push/callback.
*
* @return bool true on success, false on failure
*/
public function unsubscribe() {
return $this->subscribe('unsubscribe');
}
/**
* Send an Activity Streams notification to the remote Salmon endpoint,
* if so configured.
*
* @param Profile $actor
* @param $verb eg Activity::SUBSCRIBE or Activity::JOIN
* @param $object object of the action; if null, the remote entity itself is assumed
*/
public function notify(Profile $actor, $verb, $object=null)
{
if ($object == null) {
$object = $this;
}
if ($this->salmonuri) {
$text = 'update'; // @fixme
$id = 'tag:' . common_config('site', 'server') .
':' . $verb .
':' . $actor->id .
':' . time(); // @fixme
$entry = new Atom10Entry();
$entry->elementStart('entry');
$entry->element('id', null, $id);
$entry->element('title', null, $text);
$entry->element('summary', null, $text);
$entry->element('published', null, common_date_w3dtf());
$entry->element('activity:verb', null, $verb);
$entry->raw($profile->asAtomAuthor());
$entry->raw($profile->asActivityActor());
$entry->raw($object->asActivityNoun('object'));
$entry->elmentEnd('entry');
$feed = $this->atomFeed($actor);
$feed->initFeed();
$feed->addEntry($entry);
$feed->renderEntries();
$feed->endFeed();
$xml = $feed->getString();
common_log(LOG_INFO, "Posting to Salmon endpoint $salmon: $xml");
$salmon = new Salmon(); // ?
$salmon->post($this->salmonuri, $xml);
}
}
function getBestName()
{
if ($this->isGroup()) {
return $this->localGroup()->getBestName();
} else {
return $this->localProfile()->getBestName();
}
}
function atomFeed($actor)
{
$feed = new Atom10Feed();
// @fixme should these be set up somewhere else?
$feed->addNamespace('activity', 'http://activitystrea.ms/spec/1.0/');
$feed->addNamesapce('thr', 'http://purl.org/syndication/thread/1.0');
$feed->addNamespace('georss', 'http://www.georss.org/georss');
$feed->addNamespace('ostatus', 'http://ostatus.org/schema/1.0');
$taguribase = common_config('integration', 'taguri');
$feed->setId("tag:{$taguribase}:UserTimeline:{$actor->id}"); // ???
$feed->setTitle($actor->getBestName() . ' timeline'); // @fixme
$feed->setUpdated(time());
$feed->setPublished(time());
$feed->addLink(common_url('ApiTimelineUser',
array('id' => $actor->id,
'type' => 'atom')),
array('rel' => 'self',
'type' => 'application/atom+xml'));
$feed->addLink(common_url('userbyid',
array('id' => $actor->id)),
array('rel' => 'alternate',
'type' => 'text/html'));
return $feed;
}
/**
* Read and post notices for updates from the feed.
* Currently assumes that all items in the feed are new,
* coming from a PuSH hub.
*
* @param string $xml source of Atom or RSS feed
* @param string $hmac X-Hub-Signature header, if present
*/
public function postUpdates($xml, $hmac)
{
common_log(LOG_INFO, __METHOD__ . ": packet for \"$this->feeduri\"! $hmac $xml");
if ($this->secret) {
if (preg_match('/^sha1=([0-9a-fA-F]{40})$/', $hmac, $matches)) {
$their_hmac = strtolower($matches[1]);
$our_hmac = hash_hmac('sha1', $xml, $this->secret);
if ($their_hmac !== $our_hmac) {
common_log(LOG_ERR, __METHOD__ . ": ignoring PuSH with bad SHA-1 HMAC: got $their_hmac, expected $our_hmac");
return;
}
} else {
common_log(LOG_ERR, __METHOD__ . ": ignoring PuSH with bogus HMAC '$hmac'");
return;
}
} else if ($hmac) {
common_log(LOG_ERR, __METHOD__ . ": ignoring PuSH with unexpected HMAC '$hmac'");
return;
}
require_once "XML/Feed/Parser.php";
$feed = new XML_Feed_Parser($xml, false, false, true);
$munger = new FeedMunger($feed);
$hits = 0;
foreach ($feed as $index => $entry) {
// @fixme this might sort in wrong order if we get multiple updates
$notice = $munger->notice($index);
// Double-check for oldies
// @fixme this could explode horribly for multiple feeds on a blog. sigh
$dupe = new Notice();
$dupe->uri = $notice->uri;
if ($dupe->find(true)) {
common_log(LOG_WARNING, __METHOD__ . ": tried to save dupe notice for entry {$notice->uri} of feed {$this->feeduri}");
continue;
}
// @fixme need to ensure that groups get handled correctly
$saved = Notice::saveNew($notice->profile_id,
$notice->content,
'ostatus',
array('is_local' => Notice::REMOTE_OMB,
'uri' => $notice->uri,
'lat' => $notice->lat,
'lon' => $notice->lon,
'location_ns' => $notice->location_ns,
'location_id' => $notice->location_id));
/*
common_log(LOG_DEBUG, "going to check group delivery...");
if ($this->group_id) {
$group = User_group::staticGet($this->group_id);
if ($group) {
common_log(LOG_INFO, __METHOD__ . ": saving to local shadow group $group->id $group->nickname");
$groups = array($group);
} else {
common_log(LOG_INFO, __METHOD__ . ": lost the local shadow group?");
}
} else {
common_log(LOG_INFO, __METHOD__ . ": no local shadow groups");
$groups = array();
}
common_log(LOG_DEBUG, "going to add to inboxes...");
$notice->addToInboxes($groups, array());
common_log(LOG_DEBUG, "added to inboxes.");
*/
$hits++;
}
if ($hits == 0) {
common_log(LOG_INFO, __METHOD__ . ": no updates in packet for \"$this->feeduri\"! $xml");
}
}
}

Some files were not shown because too many files have changed in this diff Show More